6.2 linux的三大神器
grep,sed(流编辑器),awk
sed基本用法
sed :Stream EDitor
行编辑器(全屏编辑器:vi)
sed:模式空间
默认不编辑原文件,仅对模式空间中的数据做处理:而后,处理
结束后,将模式空间打印至屏幕
sed [options] 'AddressCommand' file ...
-n:静默模式,不再默认显示模式空间里的内容
Address:
1 StartLine,EndLine
比如1,100(从第1行到100行)
$:最后一行
2 /REGEXP/
比如 /^root/
sed '/oot/d' /etc/fstab
3 /Pattern1/,/Pattern2/
表示第一次被Pattern1匹配到的行开始,到第一次被Pattern2
匹配到的行结束,这中间的所有行
4 LineNumber
指定的行
sed ‘1d’ /etc/fstab
5 StartLine,+N
从StartLine开始,向后的N行,共N+1行
sed '1,+2d' /etc/fstab
Command:
d:删除符合条件的行
p:显示符合条件的行
a \string:在指定的行后面追加新行,内容为"string"
\n: 可以用于换行
i \string:在指定的行前面追加新行,内容为"string"
r FILE:将指定的文件的内容添加至符合条件的行处
w FILE:将地址指定范围内的行另存至指定的文件中
s/pattern/string/修饰符:查找并替换(默认只替换每行中第一次
被模式匹配到的字符串)
加修饰符
g:全局替换
i:忽略字符大小写
sed '1,2d' /etc/fstab
sed '/^\//d' /etc/fstab
sed '/^\//a \# hello world' /etc/fstab
sed '/^\//a \# hello world\n # hello,linux' /etc/fstab
sed '2r /etc/issue' /etc/fstab
sed '/oot/w /tmp/oot.txt' /etc/fstab
sed ‘s/oot/OOT/’ /etc/fstab
sed 's/^\//#/' /etc/fstab
本文转自飞行萌51CTO博客,原文链接: http://blog.51cto.com/8527508/1941823,如需转载请自行联系原作者