每天一个linux命令——sed

sed:是一个流编辑器,非常擅长处理行文本文件,处理时,把当前的行存储在临时缓冲区,成为“模式空间”,处理完成后将缓冲区的内容送往屏幕,接着处理下一行,直到文件末尾。文件内容没有改变,除非使用重定向。

替换操作

sed 's/需要替换的部分/替换成的部分/' file

root@ubuntu:~/shell# cat file.txt 
bookss book
bookss book
bookss book
table

源文件如图:

root@ubuntu:~/shell# sed 's/book/BOOK/' file.txt  将book替换成BOOK。替换第一个匹配的部分
BOOKss book
BOOKss book
BOOKss book
table

root@ubuntu:~/shell# sed 's/book/BOOK/g' file.txt   后面接[number]g表示,从每行第几个匹配的位置开始替换。默认是从第一个匹配到的到本行最后
BOOKss BOOK
BOOKss BOOK
BOOKss BOOK
table

sed '/^$/d' file  删除空白行。后接d代表删除

sed '2,$d' file 删除第二行到最后一行

sed '$d' file  删除最后一行

\w\+ 代表每一个单词。

echo this is a test line |sed 's/\w\+/[&]/g'  将每个单词替换成[单词],&代表前面匹配到的每个内容

\(……\)里面填写的是需要操作的内容。echo this is digit 7 in a number|sed 's/digit \([0-9]\)/\1' 将替换的内容,替换成第一个括起来的内容。即将digit 7 替换成7.、1代表第一个\(..\)括起来的内容,同理\2,是第二个括起来的。

sed 命令非常强大,这里只是作为初学者简单的学习了一下,还有更多功能,以后接触到在继续了解。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值