sed命令语法格式
sed [参数] ‘条件/指令’ 文件名称
参数 | 作用 |
---|---|
-n | 取消默认输出 |
-i | 真实修改文件内容 |
-e | 可以执行多个指令 |
-r | 识别扩展正则符号 |
指令 | 作用 |
---|---|
p | 输出 |
d | 删除 |
s | 替换 |
g | 匹配文件内容中的所有信息 |
i | 当前行上一行插入信息 |
a | 当前行下一行插入信息 |
c | 替换整行信息 |
示例
1.准备一个测试文件
2.查看文件内容
查看文件第二行内容:
如果不加 -n 参数的话,则回显示文件的所有内容,在这里可以将-n理解为消除多余输出。
查看文件2-5行的内容:
查看文件指定几行的内容:
也可使用-e参数将指令分开执行实现同样效果:
3.添加文件内容
在文件第2行下一行添加内容,这只是将执行结果输出到屏幕上,并没有直接写入文件中。
要将新增内容真正加入到文件中需要加一个参数-i,但不可与-n连用,否则会将文件内容清空!
也可以在改动文件的同时对文件进行备份,防止误操作:
在文件指定行上面添加内容:
追加文件内容:
修改替换文件内容
原文件:
加了指令g之后,文件内容中所有的girl变成了boy:
不加指令g,会将第一个匹配的内容进行替换:
使用c指令,整行进行替换:
文件内容的删除
单行删除:
多行删除:
指定多行删除:
加参数-e可以实现同样效果: