awk部分string匹配(如果列/字部分匹配)
我的虚拟文件看起来像这样:
C1 C2 C3 1 a snow 2 b snowman snow c sowman  如果有$ 3的stringsnow ,我想得到线路。 我可以这样做: 
 awk '($3=="snow" || $3=="snowman") {print}' dummy_file 
但应该有更简单的方法。
 awk '$3 ~ /snow/ { print }' dummy_file 
也可以通过使用index()函数查找子string:
 awk '(index($3, "snow") != 0) {print}' dummy_file 
 只打印第三个字段为snow或snowman : 
 awk '$3~/^snow(man)?$/' file 
GNU sed
 sed '/\s*\(\S\+\s\+\)\{2\}\bsnow\(man\)\?\b/!d' file 
input:
 C1 C2 C3    
 1雪   
 2 B雪人 
雪c索曼
      雪雪人
..output:
1雪 2 B雪人