sed

删除:sed    'n,md'  /  'n,$d'

  把第n行到m行的内容删除  /  删除第n行到最后一行的内容

新增:sed    'na  word'  /  'n,ma  word'  /  sed   'na   drink tea or ...

  >coffee'

  在第n行下一行加入word  /  在当前行n依次往下至m添加word,范围是(n,m)  /  会在第n行下面加入两行内容,分别是drink tea or ...和coffee

替换:sed    'n,mc   word' 

  把n-m行的内容替换成word。

替换:sed   's/旧字符串/新字符串'

  举个栗子:

    有字符串inet addr:192.168.1.10存于a.c文本中,要仅保留192.168.1.10

    可以有>cat   a.c | sed   's/^.*addr:/(空格)  /g'  ,其中把inet addr:替换成空格。.*代表任意多个字符。

     (同理, 如果要筛选后面的内容,可以sed   's/xxx.*$/(空格)/g)

打印内容(相当于cat):ls xxx.text | sed  -n 'n,mp'  /  ls xxx.text | sed  'n,mp'

  仅输出经过特别处理的xxx.text内容(-n 筛选内容)  /  不仅输出贴别处理的内容,还有xxx.text的全部内容

直接处理sed的对象,而不经过vim或者cat或者ls(- i):

  you are superman!把结尾的!换成.

  sed   -i   's/!$/./g'    'you are superman!'

  

原文地址:https://www.cnblogs.com/cwy-blog/p/7998115.html