sed命令用法

sed简介

sed是Linux下一款功能强大的非交互流式文本编辑器,可以对文本文件进行增、删、改、查等操作,支持按行、按字段、按正则匹配文本内容,灵活方便,特别适合于大文件的编辑。和awk相同,sed也是逐行对文件进行处理。


sed命令格式和常用参数

格式如下:sed [-efni]  'command' test.txt 

-e指定多个处理命令,每个命令之前都用-e参数
-f

指定一个存放了sed命令的文件,执行该文件中的命令

-n取消默认的控制台输出
-i将更改保存到源文件,也就是修改源文件
a在指定的行后插入新的数据,输出到命令行(不对源文件进行修改,除非指定-i)
c替换指定行的数据,输出到命令行(不对源文件进行修改,除非指定-i)
d删除指定行的数据,输出到命令行(不对源文件进行修改,除非指定-i)
i在指定行前插入新的数据,输出到命令行(不对源文件进行修改,除非指定-i)
p打印指定行的数据,和-n参数一起使用
s替换匹配到的每一行的数据为指定数据

测试用例:

1、在a.txt的第二行后面插入hahaha字符:sed '2a hahaha' a.txt

2、在a.txt的第二行前面插入hahaha字符:sed '2i hahaha' a.txt

3、将a.txt的第二行的数据替换成hahaha:sed '2c hahaha' a.txt

4、将a.txt的指定行删除:sed '2d ' a.txt

4、打印a.txt第5行的数据:sed -n '5p' a.txt

注意这里使用了-n参数取消默认打印所有行,只打印指定行

5、将a.txt中所有wait替换成waitfor:sed 's/wait/waitfor/' a.txt

6、指定多个处理命令:sed -e 's/wait/waitfor/' -e '2d' a.txt

7、对源文件进行修改:sed -i '2d' a.txt 


总结

这里只对sed常用参数做一个简单的举例,其实sed命令的强大并不止这些,在对大型文件的增删改查中能起到很大的作用,不过这就需要根据实际场景去设计sed的用法了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值