sed命令简介
sed命令是一个很强大的文本编辑器,可以对来自文件、以及标准输入的文本进行编辑。
执行时,sed会从文件或者标准输入中读取一行,将其复制到缓冲区,对文本编辑完成之后,读取下一行直到所有的文本行都编辑完毕。
所以sed命令处理时只会改变缓冲区中文本的副本,如果想要直接编辑原文件,可以使用-i选项或者将结果重定向到新的文件中。
sed常用操作
为了方便演示,我先建立一个文件,具体操作如下:
- 使用 vim创建一个sed.txt文件,并写入一些内容1 vim sed.txt 
写入 hi! I'm is a coder.
如图:
2.保存并且退出
按下键盘 esc 退出编辑模式,然后输入 :wq ,保存并退出 vim 编辑器
1、查找某个字符,并替换某个字符
查找 coder 换成 liang
| 1 | sed -i "s/coder/liang/" ./sed.txt | 
结果如图:
2、查找以某字符开头的行,并整行替换
查找 hi 开头的行数,换成 hello
| 1 | sed -i -e "/^hi/s/^.*$/hello/" ./sed.txt | 
结果如图:
3、查找某个字符,在其后边插入字符串
查找 hello 开头的字符串,在后边添加 ! I'm is a coder.
| 1 | sed -i "/hello/ s/$/! I'm is a coder./" ./sed.txt | 
结果如图:
4、在文件末尾新起一行插入字符串
在 hello! I'm is a coder. 的下一行添加 hi! I'm is a programmer.
| 1 | sed -i "\$a hi! I'm is a programmer." ./sed.txt | 
注意: 这里因为 $ 符号在双引号内是解释型的关键字,如果外围使用单引号 I'm 又会出现截断问题,所以说我在 ‘$’ 前,加了一个转义字符 \ ,达成目的。
结果如图:
结语
本文只记录了一部份的sed用法,其实还有很多种用法,持续更新…