收藏文章 楼主

Linux的Shell--Sed操作(指定行增加删除内容)

版块:linux   类型:精华/置顶   作者:小绿叶技术博客   查看:5495   回复:0   获赞:3   时间:2018-12-31 16:40:34

#-----------在某行(指具体行号)前或后加一行内容-----------

linux vi命令删除一行


#第4行末尾追加一行,内容为test

sed -i 'N;4atest' test.txt   

#第4行行首追加一行,内容为test

sed -i 'N;4itest' test.txt   


#匹配到test字段的行行首插入一行

find . -name test.txt|xargs sed -i '/test/i <!--'   

#匹配到test字段的行行末插入一行

find . -name test.txt|xargs sed -i '/test/a -->'    


#所有行首增加

sed -i 's/^/ABC/' test.txt

#所有行尾添加

sed -i 's/$/XYZ/' test.txt


#第5行添加文件a.txt的内容

sed -i '5 r a.txt' test.txt


#oooo行文件a.txt的内容

sed -i '/oooo/r a.txt' 5.txt

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

#------删除-----------------------

#删除指定行,例如第5行

sed -i '5 d' test.txt


#删除首行

sed -i '1d' test.txt


#删除末行

sed -i '$d' test.txt


#删除空行

sed -i '/^$/d' test.txt


#剔除空格

sed -i 's/[ ]*//g' test.txt


sed  -i "s/  //g"  test.txt      # 删除两个空格 为 空,一个空格不会被替换为空


#删除车符

sed -i 's/^M//g' test.txt


#删除指定字段的下一行

sed -i '/test/{n;d}' test.txt  #匹配到test字段


#删除指定字段的上一行

sed -i -e :a -e '$!N;s/.*n(.*test)/1/;ta' -e 'P;d' test.txt    #匹配到test字段

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



相关资料:

shell sed 增删改查-文件操作大全


有些梦虽然遥不可及,但并不是不可能实现。 
回复列表
默认   热门   正序   倒序

回复:Linux的Shell--Sed操作(指定行增加删除内容)

Powered by ddoss.cn 12.0

©2015 - 2024 ddoss

头像

用户名:

粉丝数:

签名:

资料 关注 好友 消息