在if语句中使用和运算符语法错误

时间:2015-07-06 22:10:26

标签: awk and-operator

我正在尝试运行以下但我显然有语法错误,我不确定它是什么。我很感激你的帮助。

cat $file | awk '{if (($2 & 0x40) != 0) print $1; else {}}'

1 个答案:

答案 0 :(得分:4)

awk不支持按位运算符。但是,如果你有gawk(GNU awk),你可以这样做:

gawk '{ if (and($2,0x40) != 0) print $1; }' $file

请注意,我删除了空的 else 子句和不必要的cat

请参阅手册了解其他bitwise operators以及gawk中的用法。