一、首先介绍一下sed
sed是一种在线编辑器,它可以按行处理文本内容,处理方式是读取原有文本一行内容到缓冲区,称为“”模式空间“”,然后利用sed 后续的命令处理该行内容,处理之后读取下一行内容,重复该动作,直到文本结束,将内容输出到屏幕上,因此它并没有改变文本本身的内容。如果你需要保持sed命令处理后的文本,可以通过重定向 '>' 方式保存处理后的内容。
二、sed命令模式一般有两种
1、sed [option] 'command' filename
2、sed [option] -f scriptfilename
三、演示sed 常用命令实例:
首先建一个文本,内容如下:
如图:
command参数 常用列表如下:
a : 新增 表示在当前一行的下一行增加携带的内容 如图:在第一行后面新增字符串 “”agent“”
1 表示第一行,如果不加行号,则会在每一行后面都增加agent,包括空行 如图
d : 表示删除 如图:删除文本的第三行
i : 插入,表示在当前行的上一行出插入内容 如图:在第三行插入 ”byebye”
c: 理解为全替换 表示用新的字符全替代行内容:如图 用 win 替代1-4行内容
s:理解为字符串匹配替换: 如图 用good 替换 you 字符串
p: 打印,默认是打印文本所有行,一般与-n 一起用,将只把处理过的文本输出,如图:
注意: sed 命令也支持直接对文本操作 用 -i 选项 如图: