awk 中的多重模式识别

Multiple pattern recognition in awk

我有一个格式如下的文件:

COL1 COL2 COL3 COL4 

我对 COL2(字符串)和 COL4(数字)感兴趣。 我需要同时验证 COL2="PATTERN" 和没有小数的 COL4 = 32(例如).

我知道如何进行 COL2 模式识别,例如:

awk -F"\t" '="PATTERN" {print }' file

但我未能强加第二个条件或将两者结合起来。

欢迎任何解决此问题的帮助。

谢谢

试试这个:

awk ' == "pattern" && int() == 32 {print }' file

我在这里做了一个测试,它有效:

echo "foo1 foo2 foo3 123.43" | awk ' == "foo2" && int() == 123 {print }'
output: 123.43

第二个条件是^[0-9]$。使用 && 链接正则表达式。