2016-08-01 72 views
0

我使用下面的命令awkawk命令不工作OR條件

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的至少一個字段應該是不爲空,但命令是不會放棄希望的結果。

任何人都可以解釋上述命令有什麼問題。

謝謝

+3

不是'OR'。它應該是'||'。 – sat

+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