我的文本文件看起來像下面在awk打印匹配列沒有發現
date="2017-10-10" ip=192.168.1.1:22 inbound=100 outbound=100
date="2017-10-10" ip=192.168.1.1:22 inbound=100
date="2017-10-10" ip=192.168.1.1:22 outbound=100
我用下面的awk代碼打印匹配的字符串和提取不管是「=」之後。
awk '{for(i=1;i<=NF;i++)if($i~/inbound=/)print $(i)}' | cut -d : -f1 | cut -d = -f2
例如,我會搜索「inbound =」並提取「100」。 但棘手的部分是「入站」不會出現在文本的所有行 現在我想打印「0」,如果一行沒有「入站」一詞。
預期輸出
100
100
0 Not Found
*無論是之後的‘=’* - 適合不但'inbound' – RomanPerekhrest