shell基础sed用法

sed:行处理命令,默认不修改原文件,仅对模式空间中的数据做处理,处理结束后,将模式空间打印至屏幕

sed [options] ‘addressCommand‘ file ...

-n :静默模式,不在默认显示模式空间中的内容

-i : 直接修改原文件

-e:script -e script:可以同时执行多个脚本

-f /path/to/sed_script

-r: 使用扩展正则表达式


command 

 d:删除符合条件的行

 p:显示符合条件的行

 a \string :在指定的行前面添加新行,内容string

      \n : 可以用于换行

 i \string :在指定的行后面添加新行,内容string

 r FILE: 将指定文件的内容添加至符合条件的行处

 W FILE: 将地址指定的范围内的行另存至指定的文件中;

 s/pattern/string/: 查找并替换,默认只替换每行中第一次被模式匹配到的字符串

  sed ‘s/^//#/‘ /etc/fstab

修饰符:

g:全局替换

 sed ‘s/\//#/g‘ /etc/fstab

i:忽略字符大小写

s///:s###:s@@@

&:引用模式匹配

address:

1,startLine,endLine

 比如1,100

$:最后一行

2,/regexp/ 正则表达式

/^root/

3,/pattern1/,/pattern2/

第一次被pattern1匹配到的行开始,至第一次被pattern2匹配到的行结束,这中间的所有行

4,linenumber

指定的行

5,startline,+N

从startline开始,向后的n行;



history | sed ‘s#[[:space]]‘

本文出自 “往来时空” 博客,请务必保留此出处http://tccsl.blog.51cto.com/4387692/1621949

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。