linux系统中sed命令删除指定行后的下一行


1、测试数据

[root@centos79 test]# cat a.txt
3 4 5
d g 3
s g 8
k s g
2 5 d
s c w
a r t
s c E
a R t
e 4 s

 

2、删除包含字符k后的一行

[root@centos79 test]# cat a.txt
3 4 5
d g 3
s g 8
k s g
2 5 d
s c w
a r t
s c E
a R t
e 4 s
[root@centos79 test]# sed '/k/{n;d}' a.txt 3 4 5
d g 3
s g 8
k s g
s c w
a r t
s c E
a R t
e 4 s

 

3、删除包含字符k的行及其后的一行

[root@centos79 test]# cat a.txt
3 4 5
d g 3
s g 8
k s g
2 5 d
s c w
a r t
s c E
a R t
e 4 s
[root@centos79 test]# sed '/k/,+1d' a.txt 3 4 5
d g 3
s g 8
s c w
a r t
s c E
a R t
e 4 s
[root@centos79 test]# sed '/k/{N;d}' a.txt 3 4 5
d g 3
s g 8
s c w
a r t
s c E
a R t
e 4 s

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM