Linux学习笔记第六周第三次课(3月14日)
9.6/9.7 awk
支持分段,passwd文件内容,很有规律,冒号分段;按段匹配;
-F指定分割符,‘{print $1}’表示打印第一段;不会更改文件内容;
‘{print $0}’表示打印所有段;
#awk '{jprint $0}' test.txt也可以打印所有段,相当于cat;
‘{print $1,$3,$4}’表示打印第一,第三,第四段;中间加逗号;
‘{print $1“#”$3“#”$4}’表示打印第一,第三,第四段,中间以#分隔;
查找oo的行并列出来,awk “/oo/”test.txt ;
第一段匹配oo的列出来,awk -F ':' '$1 ~/oo/' test.txt;
包含root或user的指定段列出来,awk -F ':' '/root/ {print $1,$3} /user/ {print $1,$3,$4}' test.txt;
显示包含root或user的行,#grep -E 'root | user' test.txt;#awk -F ':' '/root | user/ {print $0}' test.txt;
‘$3==0’表示第三段等于数字0的;
‘$3=="0"’表示第三段等于ASCII的0,字符0;
<表示小于;&&表示与;||表示或;==表示等于;
~表示匹配;
'{OFS="#"}'表示显示时用#分隔段; 写在print及条件前面;
NR表示行号,NF表示段数;
打印前10行,#awk -F ':' 'NR<=10' test.txt;
扩展
把这里面的所有练习题做一下
http://www.apelearn.com/study_v2/chapter14.html
转载于:https://blog.51cto.com/12059818/2086996