Shell 修改文件内容 sed
sed命令用于修改已有文件的内容。
vim是文件编辑器,通常需要用户多次交互操作完成文件内容的修改。
sed命令是一条命令直接完成修改文件内容。
通常改动都是很小的改动。
1 体验
准备数据:
文件data1.txt,内容如下:
111
222
333
444
555
666
例1:文件的第2行之后添加内容bbb。
sed '2abbb' data1.txt
2abbb说明
第1个字符2表示第2行;
第2个字符a表示添加操作(append);
后续内容bbb表示添加的内容。
修改后内容显示在界面,查看文件内容,没有修改。
sed命令默认选项不真正修改文件。
体验先到这里。
2 语法
sed 选项 修改命令 文件
针对 文件 进行 修改命令 对应的修改。
修改命令有自己的一套语法。 因为修改命令字符串,要能说明各种修改场景(各种位置/增删改/文本内容等)。
修改命令的语法是我们学习的重点。
3 主要选项
主要选项 | 说明 |
---|---|
-e | 默认选项。不修改文件内容,只输出显示。 |
-i | 修改文件内容 |
4 真正的修改文件
例2:文件的第2行之后添加内容bbb,真正的修改文件。
sed -i '2abbb' data1.txt
-i表示修改后内容不输出到界面,输出到文件,也就是真正修改文件。
界面没有输出内容,查看文件内容,已修改。