grep&sed&awk简单说明

来源:互联网 发布:lol游戏网络不稳定 编辑:程序博客网 时间:2024/05/19 22:45

grep  

-v 排除匹配的内容(取反)

-E 支持扩展的正则表达式   ------可以不使用转义符号\

-i   忽略大小写

-o   只输出匹配的内容    ----默认输出含有匹配内容的正行

--color=auto  匹配的内容显示颜色

-n 显示行号

-----------------------------------------------------------------------------------

sed    

d:删除符合条件的行;

p:显示符合条件的行;

a \string 指定行后追加;

i \string 在指定行前添加;

s/pattern/string/[g 全局替换  i 忽略大小写]:

查找并替换 s/// s### s@@@  & 引用模式匹配的
-n 只显示符合条件的
-i 修改源文件
-r 使用扩展正则表达式


删除:

sed '2,5d' test.txt  显示出test.txt内容,除了第2到5行

增加:

sed '5a xxx' test.txt   在第5行后面增加一行xxx

替换:

sed 's/old/new/g' test.txt (全局替换)将test.txt中含有old的替换为new

sed '1,3s/old/new/g' test.txt (只替换1到3行相关内容)


-----------------------------------------------------------------------------------

awk

针对列进行截取

cat /etc/passwd|awk -F ':' '{print $1}'  利用管道符对前面查到的数据进行处理,-F后面是代表按:分割行,$1代表分割后的第一个数据

cat -n /etc/passwd|awk -F ':' '{print $1 "\t" NR "\t" NF}' 

NR代表处理的是第几行,第一行就是1,第二行就是2…………

NF 代表一行中分了几段   

FS 代表目前的分割字符,上面就是:


-----------------------------------------------------------------------------------

-----------------------------------------------------------------------------------