我正在使用awk
命令
awk -F'\t' 'BEGIN {OFS=",";} $9=="Consumer" && $4!="" && ($12!="" OR $13!="") {print $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16}' TEL_DATA_JUL2016_fxtcupd1.TXT
我希望至少有一个来自12或13的字段应该不为null但是命令没有给出期望的结果。
有人可以解释上面命令中的问题。
由于
答案 0 :(得分:1)
逻辑OR运算符应为||
。不是OR
。你的awk
应该是,
awk -F'\t' 'BEGIN{OFS=","} $9=="Consumer" && $4!="" && ($12!="" || $13!="") {print $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16}' file