Sed工具应用示例

1、对于模板test和west之间的行,每行加上字符串aaa bbb
  • sed '/test/,/west/s/$/aaa bbb/' file

2、查找line1 到line2之间的所有aa bbb 替换为AA BBB
  • sed '/line1/,/line2/s/aa bbb/AA BBB/' test.sh

3、匹配关键字并显示后几行
  • sed -n '/3/,$p' a.sh : 显示第一次匹配到的3,到最后一行输出

  • sed -n '/3/,+2p' a.sh : 显示第一次匹配到的3,到向下2行输出

4、逆序显示文本内容
  • sed '1!G;h;$!d' /etc/passwd

5、取出文本中最后一行
  • sed '$!N;$!D' /etc/passwd

6、删除原有的所有空白行,而后为所有的非空白行后添加一个空白行
  • sed '/^$/d;G' /etc/passwd

7、在原有的每行后方添加一个空白行
希望大家开动双手来解决这个遗留问题,我们将在明天的分享中为大家分享方法。
8、显示最后一行的行号,一般可用于显示文本的总行
  • sed -n '$='  /etc/fstab

9、显示所有行的行号,但空行不显示行号
  • sed '/./='  /etc/fstab

10、使用n或p打印奇数行或偶数行
  • sed -n 'p;n' test.txt  #奇数行

  • sed -n 'n;p' test.txt  #偶数行

  • sed -n '1~2p' test.txt #奇数行

  • sed -n '2~2p' test.txt  #偶数行

Sed工具应用示例

Sed工具应用示例