Linux三剑客之sed详解(1)

时间:2023-01-09 15:29:24

sed (stream editor 流编辑器简写 ) ,用于过滤和转换文本

synopsis

  sed [option] ... {script-only-if-no-other-script} [input file]

description

  -a  --append 追加,追加到指定行之后

    示范文本:persion.txt 

    101,oldboy,CEO

    102,zhuangyao,CTO

    103,Alex,COO

    104,yy,CFO

    105,feixue,CIO

    :sed '2a 107,dandan,CSO'  persion.txt

    结果:

      Linux三剑客之sed详解(1)

      -i --insert 插入 插入到指定行之前

    :sed '2i 107,dandan,CSO'  persion.txt

      Linux三剑客之sed详解(1)

    sed除了匹配单行外,可以对多行进行操作

     n,m 匹配n~m行

     n,$ 匹配n到结尾

     n~2 匹配第n,n+2,n+3,...行(等差数列)

     n,n+m 匹配第n到n+m行

     /gaogzhen/ 匹配包含字符串"gaogzhen"的所有行

    /gaogzhen/,/gaog2zh/ 匹配包含字符串"gaogzhen"的行到包含字符串"gaog2zh"的行

  d --delete 删除 删除指定的行

    :sed '2d'  persion.txt

      Linux三剑客之sed详解(1)

  常用格式

  sed 's#ori#new#g' [inputfile]--讲new字符串替换ori字符串 ori可以是正常表达式

  实例:sed 's#oldboy#gaogzhen#g' persion.txt

      Linux三剑客之sed详解(1)