深入Awk学习的第二天,还是边练习边总结
例子:
示例1、 exp ~ /a/ 和 exp !~ /a/
基本用法、筛选字段开头是什么什么开头或者是不是什么什么开始
基本语法: awk {if (‘$第几个字段 ~/字符串或字符/’) print} file
例子:
实用中筛选是否目录
目录里面的文件
筛选不是目录的文件
示例2、‘\’ 号 的用法
其实\号在很多地方都是用作对特殊字符的取消特殊意思,比如说最基础的linux命令,\+命令,就等于命令的原本。
举个栗子:
ls在linux中是ls --color的别名,如果用\ls 就是只在用ls这个命令,不再会显示颜色。
例子:
\就把“的特殊含义改变了,只输出他的本来的模样,而不是不输出
示例3、字符替换
基本语法: awk '{sub(/正则/,"字符二"); print}'
这个基本是把匹配到的字符,替换成自己想要的字符。
例子:
总结1: 他是把匹配到的字符替换,只是匹配到的,相同,但是没匹配到的不算是
要把第一列的1改成2,用$1 表示第一列:
总结拓展 :awk ‘{sub(/正则/,"字符二",$第几列);操作}’ 可以具体操作哪一列的数据,发挥出awk的实力。
其实这样是不能保存在b里面的,只是做了输出操作。要做把输出重定向到b这个文件里面才可以保存到源文件