linux 中sed命令的保护模式b选项

 

001、

(base) root@PC1:/home/test2# cat a.txt                      ## 测试数据
1
2
3
k
4
5
6
7
k
8
9
10
(base) root@PC1:/home/test2# sed '/k/{n;d}' a.txt      ## 删除匹配k之后的一行
1
2
3
k
5
6
7
k
9
10
(base) root@PC1:/home/test2# cat a.txt
1
2
3
k
4
5
6
7
k
8
9
10
(base) root@PC1:/home/test2# sed '/1,5/b; /k/{n;d}' a.txt     ## 将1-5行保护起来,然后删除匹配k之后的一行
1
2
3
k
5
6
7
k
9
10

 

[root@pc1 test3]# cat a.txt
1
2
3
k
4
5
6
7
k
8
9
10
[root@pc1 test3]# sed '1,5{b}; /k/{n;d}' a.txt   ## 将1-5行保护起来, 删除之后匹配k的下一行
1
2
3
k
4
5
6
7
k
9
10

 

posted @ 2022-08-17 00:57  小鲨鱼2018  阅读(59)  评论(0编辑  收藏  举报