Shell中的$指的是变量,而awk中的$指的是域,用分割符分割出来的一个一个的域,默认的分割符是空格,修改分割符时用awk –F :,:为将采用的分割符
- awk 'BEGIN {print "begin"}{print $1"\t"$4} END {print "end-of-report"}' test.txt|more
//这里加了两个标记BEGIN和END,这两个必须要大写,小写不出报错,但达不到相应的结果,默认以空格作为分割符并取其第一列和第四列,两列之间加一个tab。
+表示匹配任意字符,?表示匹配单个字符,匹配的内容的要放在//双斜杠之间eg:
cat test.txt|awk ‘$0~/my/’,如果想要得到不匹配的用!~就OK啦
判断比较:
awk –F- ‘{if($1==”210”) print $0}’ test.txt
这句的意思是:以-进行分割,当第一个分割域的值为210时,打印所有符合条件的内容
本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/427020,如需转载请自行联系原作者