Linux中使用sed命令操作文本文件

1 篇文章 0 订阅

如有侵权,请联系作者。
转载请注明出处。
记录自己,帮助他人。

标签:Linux,linux,sed,命令,文本文件,操作文本文件,追加内容,删除内容。

修订历史

  • 2020-07-10:首次编辑。

说明

操作一个文本文件,一般都是通过 vim 程序,先打开该文件,然后再执行增删改查。如果遇到无法进入文件但要对文件进行修改,vim 就无能为力了。使用 sed 程序可以满足这个需求,sed 无需进入文件,可以直接对文件进行操作。

另,sed 不仅可以在不打开文件的前提下直接操作文件,还可以通过执行脚本修改文件,支持批量修改文件。

注意,-i 可以直接修改文件,属于危险操作,请确认后执行。-i 后的参数必须放在单引号内。

添加

  • 在第 5 行后添加一行,内容为“This is the content.”。原第 6 行变为第 7 行,以此类推。

    注意:如果添加的内容以空格为开头,空格需要转义为“\ ”,多个空格使用多个转义“\ \ \ \ ”即可。

sed -i '5aThis is the content.' <file_path>

删除

  • 删除第 5 行:
sed -i '5d' <file_path>
  • 删除最后一行:
sed -i '$d' <file_path>

修改

  • 实际使用中发现,如果要替换,会替换一个,或者替换所有。没有找到替换指定行内特定内容的方法,所以不如把第 N 行删掉,然后在第 N - 1 行后添加一行新内容。即,先执行删除,再执行增加。如,修改第 5 行:
sed -i '5d' <file_path>
sed -i '5aThis is the content.' <file_path>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值