sed指令
sed对转义字符的处理(如:/等):
加反斜杠:
将aa全替换为/:
sed -i 's/aa/\//g' aa.txt
在第1行前增加“Hi All,”(1i为第1行前,1a为第1行后)
# cat aa.txt | sed -e '1i Hi All,' > aa.txt
在第2行前增加空行:
# cat aa.txt | sed -e '2G'
在某一行后插入:sed -i '/指定行内容/a\插入行‘ filename
# sed -i '/set -e/a\export USE_CCACHE=1' /etc/init.d/tomcat7
在某一行前插入:sed -i '/指定行内容/i\插入行‘ filename
# sed -i '/set -e/i\export USE_CCACHE=1' /etc/init.d/tomcat7
对文件内容进行批量替换:
# sed -i 's/=/ /g' aa.txt > aa2.txt
删除空行:
# sed -i '/^$/d' filename
删除匹配行(含有aa的行):
# sed -i '/aa/d' filename
通过命令更换文件内容:
# sed -i ’s/需替换内容/替换内容/g' filename
删除最后一行:
# sed -i '$d' filename
从第5行到最后一行全删:
# sed -i '5,$d' filename
找到要删除行的行号,然后对行进行删除(脚本执行):
Nu=`nl build.xml | grep keepLog | awk -F[:" "]+ '{print $2}'`
sed -i "$Nu"d build.xml
本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/1860791如需转载请自行联系原作者
yangzhimingg