Linux三剑客——sed
Linux三剑客——sed
1. 关于sed
1. Linux sed 命令是利用脚本来处理文本文件。 2. sed 可依照脚本的指令来处理、编辑文本文件。 3. Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
2. sed的格式
sed [-hnV][-e<script>][-f<script文件>][文本文件]
3. sed的参数
-e<script>或--expression=<script> | 以选项中指定的script来处理输入的文本文件 |
-f<script文件>或--file=<script文件> | 以选项中指定的script文件来处理输入的文本文件 |
-h或--help | 显示帮助 |
-n或--quiet或--silent | 仅显示script处理后的结果 |
-V或--version | 显示版本信息 |
-r | 支持拓展正则 |
-i | 就地编辑 |
4. 定位
4.1 数字定位法
指定行号。 sed '3d' 4.txt sed '2,3d' 4.txt
4.2 正则定位法
指定正则定位。 sed '/^g/d' 2.txt
4.3 数字正则定位法
sed '3,/^g/d' 2.txt
4.4 正则正则定位法
sed '/^g/,/^j/d' 2.txt
5. sed的编辑模式
d | 删除 |
p | 打印 |
a | 在当前行后添加一行或多行 |
c | 用新文本修改(替换)当前行 |
i | 在当前行之前,插入文本 |
r | 在文件中读内容 |
w | 将指定行写入文件 |
y | 将字符转换成另一个字符 |
s | 将字符串转换成另一个字符串(每一行只替换一次) |
g | 全部执行 |
和s连用的i | 忽略大小写 |
& | 代表前面匹配到的内容 |