sed是“stream editor”的简称。sed命令有两种玩法,一个是直接在命令行使用,一个是写成seq脚本使用。
sed命令格式如下:
sed [options] [command] [files]
例如:
$ sed -f scriptf.sed 1.txt > 2.txt
-n 不输出全部文件内容,只输出被编辑行内容
-p 打印编辑行
-c 使用多项编辑
-e 默认选项,即单项命令
-f 调用sed脚本文件
p 打印匹配行
= 显示文件行号
a\ 在定位行号后附加新文本信息
i\ 在定位行号后插入新文本信息
d 删除定位行
c\ 用新文本替换定位文本
s 使用替换模式替换相应模式
r 从另一个文件中读文本
w 写文本到一个文件
q 立即退出 或 第一个模式匹配完成后退出
l 显示与八进制ASCII码等价的控制字符
{} 在定位行执行的命令组
$ sed ‘1,2d‘ article.txt > article.txt
\\ 删除article.txt文件中的第1行和第2行
例如替换the为THE:
$ sed ‘s\the\THE‘ article.txt > article.txt
追加操作格式如下:
[address] atext1text2...
textn
address指定一个模式或行号,定位新文本的附加位置,sed对a\后的文本进行追加操作。
插入操作格式如下:
[address] itext1text2...
textn
将i\后面几行的内容插入到指定位置。
格式如下:
[address] ctext1text2...
textn
将匹配的模式行修改为c\后面的内容。
原文:https://www.cnblogs.com/dynmi/p/13765290.html