sed之添加空行

一、每行前后添加空行

1.每行后面添加一行空行:

  sed  G  tmp

 每行前面添加一行空行:

  sed  ‘{x;p;x;}’ tmp

2.每行后面添加两行空行:

  sed  ‘G;G’  tmp

 每行前面添加两行空行:

  sed '{x;p;x;x;p;x;}' tmp

3.每行后面添加三行空行:

  sed  ‘G;G;G’  tmp

  每行前面添加三行空行:

  sed '{x;p;x;x;p;x;x;p;x}' tmp

依次类推,添加几行空行,就有几个G或者x;p;x

二、如果行后有空行,则删除,然后每行后面添加空行

sed  '/^$/d;G'  tmp

三、在匹配行前后添加空行

sed '/shui/G' tmp  如果一行里面有shui这个单词,那么在他后面会添加一个空行

sed '/shui/{x;p;x;G}' tmp 如果一行里面有shui这个单词,那么在他前后各添加一个空行

sed '/shui/{x;p;x;}' tmp 如果一行里面有shui这个单词,那么在他前面添加一个空行

sed ‘1{x;p;x;}’ tmp 在第一行前面添加空行,想在第几行,命令中的1就改成几

sed ‘1G’ tmp 在第一行后面添加空行,想在第几行,命令中的1就改成几

四、每几行后面添加一个空行

1.每两行后面增加一个空行

  sed 'N;/^$/d;G' file.txt

 每两行前面添加一个空行

  sed  'N;/^$/d;{x;p;x;}'  tmp

2.每三行后面增加一个空行

  sed 'N;N;/^$/d;G' file.txt

  每三行前面增加一个空行

  sed 'N;N;/^$/d;{x;p;x;}'  tmp

五、以x为开头或以x为结尾的行前后添加空行

1.以xi为开头的行后面添加空行

 sed  '/^xi/G;'  tmp

 以xi为结尾的行前面添加空行

 sed  '/^xi/{x;p;x;}'  tmp

2.xi为结尾的行后面添加空行

 sed  '/xi$/G;' tmp

 以xi为结尾的行后面添加空行

 sed  '/xi$/{x;p;x;}' tmp

如果有错误的地方,麻烦各位帮忙指正,谢谢!

posted @ 2013-10-22 14:51  冰灵儿  阅读(5924)  评论(0编辑  收藏  举报