我的虚拟文件如下所示:
C1 C2 C3
1 a snow
2 b snowman
snow c sowman
Run Code Online (Sandbox Code Playgroud)
如果snow$ 3中有字符串,我想获取行.我可以这样做:
awk '($3=="snow" || $3=="snowman") {print}' dummy_file
Run Code Online (Sandbox Code Playgroud)
但应该有更简单的方法.
Ahm*_*sud 127
awk '$3 ~ /snow/ { print }' dummy_file
Run Code Online (Sandbox Code Playgroud)
Thu*_*eef 32
也可以通过使用index()函数查找substring:
awk '(index($3, "snow") != 0) {print}' dummy_file
Run Code Online (Sandbox Code Playgroud)
更短的版本:
awk 'index($3, "snow")' dummy_file
Run Code Online (Sandbox Code Playgroud)
也许这会有所帮助
http://www.math.utah.edu/docs/info/gawk_5.html
awk '$3 ~ /snow|snowman/' dummy_file
Run Code Online (Sandbox Code Playgroud)