3

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

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

1 回答 1

4

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

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

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

请参阅手册了解其他按位运算符和 gawk 中的用法。

于 2015-07-06T22:18:43.143 回答