linux 中sed命令 P和p的区别

 

001:

p:输出缓冲区中的所有内容。

P:输出缓冲区中一个个换行符之前的内容

(base) root@PC1:/home/test4# ls
a.txt
(base) root@PC1:/home/test4# cat a.txt
1
2
3
4
5                                             ## N的作用是预先读取下一行,将两行作为一行来处理,即两行内容储存在一个缓冲区, 
(base) root@PC1:/home/test4# sed 'N;p' a.txt  ## p输出缓冲区的左右内容, 因此每两行内容会翻倍
1
2
1
2
3
4
3
4
5

 

002、

(base) root@PC1:/home/test4# ls
a.txt
(base) root@PC1:/home/test4# cat a.txt
1
2
3
4
5                                                   ## N的作用是将两行作为一行来处理
(base) root@PC1:/home/test4# sed 'N;P' a.txt        ## P选项仅输出缓冲区第一个换行符之前的内容,因此,1和3各多输出一1
1
2
3
3
4
5

 

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