linux 中 提取或者删除注释行

 

001、

[liujiaxin01@PC1 test]$ ls
a.txt
[liujiaxin01@PC1 test]$ cat a.txt
## xxx yy
## ddd ss
  ## kkk qqq
                ## mm nn
1       a       A       7
2       b       B       6
3       c       C       5
4       d       D       4


[liujiaxin01@PC1 test]$ sed -n '/^#/p' a.txt           ## 提取以#号开头的行
## xxx yy
## ddd ss
[liujiaxin01@PC1 test]$ sed -n '/^ *#/p' a.txt         ## 提取以0个或者任意个数个空格 + #号开头的行
## xxx yy
## ddd ss
  ## kkk qqq
[liujiaxin01@PC1 test]$ sed -n '/^[\t ]*#/p' a.txt      ## 提取以空格、制表符 + #号开头的行
## xxx yy
## ddd ss
  ## kkk qqq
                ## mm nn
[liujiaxin01@PC1 test]$ sed -n '/^\s*#/p' a.txt         
## xxx yy
## ddd ss
  ## kkk qqq
                ## mm nn

 

 

002、删除注释行

[liujiaxin01@PC1 test]$ ls
a.txt
[liujiaxin01@PC1 test]$ cat a.txt         ## 测试数据
## xxx yy
## ddd ss
  ## kkk qqq
                ## mm nn
1       a       A       7
2       b       B       6
3       c       C       5
4       d       D       4


[liujiaxin01@PC1 test]$ sed '/^#/d' a.txt   ##删除#号开头的行
  ## kkk qqq
                ## mm nn
1       a       A       7
2       b       B       6
3       c       C       5
4       d       D       4


[liujiaxin01@PC1 test]$ sed '/^ *#/d' a.txt     ## 删除以#号或者以空格+#开头的行
                ## mm nn
1       a       A       7
2       b       B       6
3       c       C       5
4       d       D       4


[liujiaxin01@PC1 test]$ sed '/^\s*#/d' a.txt   ## 删除以#号或者以空字符+#号的行
1       a       A       7
2       b       B       6
3       c       C       5
4       d       D       4

 

posted @ 2022-12-24 13:20  小鲨鱼2018  阅读(257)  评论(0编辑  收藏  举报