sed删除以什么开头的内容_sed命令手册

功能

sed全名叫stream editor,流编辑器,用程序的方式来编辑文本,sed玩的就是正则表达式。

示例

1、使用下面这段文本作为演示。

[root@linux-time src]# cat e.txte e equ xiang xiang tian gebai mao fu lv shuihong zhang bo qing bo

2、替换文本中每行第一次出现的e为o,并将结果作为标准输出。

[root@linux-time src]# sed 's/e/o/' e.txto e equ xiang xiang tian gobai mao fu lv shuihong zhang bo qing bo

3、替换文本中每行所有出现的e为o,并将结果作为标准输出。

[root@linux-time src]# sed 's/e/o/g' e.txto o oqu xiang xiang tian gobai mao fu lv shuihong zhang bo qing bo

4、替换文本中每行所有出现的e为o,并将结果写入文件。

[root@linux-time src]# sed -i 's/e/o/g' e.txt [root@linux-time src]# cat e.txt o o oqu xiang xiang tian gobai mao fu lv shuihong zhang bo qing bo

5、将第3行的u替换成v,并将结果打印到标准输出。

[root@linux-time src]# sed  '3s/u/v/g' e.txt o o oqu xiang xiang tian gobai mao fv lv shvihong zhang bo qing bo

6、删除全部以o结尾的行

[root@linux-time src]# sed  '/o$/d' e.txt bai mao fu lv shui

7、可以将sed作为grep命令使用,例如打印匹配mao的行。

[root@linux-time src]# sed  -n '/mao/p' e.txt bai mao fu lv shui

8、打印第一行到匹配成功bai的行

[root@linux-time src]# sed -n '1,/bai/p' e.txto o oqu xiang xiang tian gobai mao fu lv shui

9、多个匹配,将每行第一次出现的go和bo替换成to。

[root@linux-time src]# sed -e 's/go/to/' -e 's/bo/to/' e.txt o o oqu xiang xiang tian tobai mao fu lv shuihong zhang to qing bo

10、打印文本的第2行

[root@linux-time src]# sed '2q;d' e.txt qu xiang xiang tian go

思考

1、用sed只替换2到5行的内容该怎么写?

2、用sed只替换每行第二个匹配到的字符怎么写?

3、用sed在每行的开头或结尾加字符要怎么写?

补充

1、如果匹配模式中有"/"符号,可以使用其他符号替代,以降低匹配模式编写的复杂度,例如用'#'符替代:

sed 's#http://#ftp://#g' filename

2、补充一下正则表达式最基本的东西

  • ^ 表示一行的开头。如:/^#/ 以#开头的匹配。 

  • $ 表示一行的结尾。如:/}$/ 以}结尾的匹配。

  • \< 表示词首。如:\

  • \> 表示词尾。如:abc\>表示以abc结尾的词。

  • . 表示任何单个字符。

  • * 表示某个字符出现了0次或多次。

  • [ ] 字符集合。如:[abc] 表示匹配a或b或c,还有 [a-zA-Z] 表示匹配所有的26个字符。

  • 如果其中有^表示取反,如 [^a] 表示非a的字符。

  • 再补充一个^$表示空行

3、好了,就这样,sed命令实践性很强,一定要自己按照例子多敲几次。


45367c566303d4232a90bd6556134d27.png

长按识别或扫码关注「Linux命令手册」

可以快速查询命令和提升Linux技能哦!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值