目录
[1.1 s命令(substitute替换)](#1.1 s命令(substitute替换))
一、sed编辑器
sed编辑器比交互式编辑器快的多,可以简化数据处理任务,sed编辑器并不会修改文件,只会将修改后的数据,输出。
二、sed使用案例
首先创建一个文件,创建指令如下:
bash
# 在sample.txt文件中重复"Hello, this is a sample text file for practicing sed command."这一行内容10次
for i in {1..10}; do echo "Hello, this is a sample text file for practicing sed command."; done >> sample.txt
# 查看文件
cat sample.txt
生成文件内容如下:
1.1 s命令(substitute替换)
使用sed指令,其中s命令会用斜线间第二个文本字符串来替换第一个文本字符串,
bash
sed 's/sample/small sample/' sample.txt
也就是使用红色框里面的small sample替换蓝色的sample,可以看到文件内容已经发生黄色标注的变化。
要在sed命令上执行多个命令时,使用-e选项
bash
sed -e 's/sample/big sample/; s/Hello/Hi/' sample.txt
也就是使用了红色框里面的两个s替换命令,可以看到文件内容已经发生黄色标注的变化。
如果有大量要处理的sed命令,把sed命令放在一个文件里更方便,然后使用-f选项指定文件,创建一个如下的sed命令文件,最好文件名用sed结尾,否则很容易和shell脚本搞混。
bash
sed -f script1.sed sample.txt
这里我们看到文件的内容并没有修改,是因为开篇我们提到,sed指令并不会修改文件内容,只会把修改结果输出到屏幕上。