sed 编辑器
用法:
sed [option] … ‘script’ inputfile
常用选项:
-n : 不输出模式中的内容至屏幕
-e : 多点编辑
-f /PATH/TO/SCRIPT_FILE:从指定路径读取脚本
-r : 支持使用扩展正则表达式
-i : 原处编辑
地址定界:
(1)不给地址:对全文进行处理:
(2)单地址:
#: 指定的行:
/pattern/ : 被此处模式所能匹配到的行:
(3)地址范围:
#,#
#,+#
/part1/,/part2/
#,/part1/
(4)~:步进
sed -n '1~2p' 显示所有偶数行
编辑命令:
d: 删除
p: 打印当前模式空间
a \text:在行后面追加文本:支持\n实现多行追加:
i \text: 在行前面插入文本:支持\n实现多行插入:
c \text: 替换行为单行或多行文本
w /path/to/somefile: 保存模式空间的内容至指定文件中:
r /path/to/somefile: 读取指定文件的文本了至模式空间中匹配到的行的航后
=:为模式空间中的行打印行号
!:定制定界取反
s///: 支持使用其它分隔符,s@@@,s###:
替换标记:
g:行内全局替换:
p: 显示替换成功的行:
w /path/to/somefile:将替换成功的结果保存至指定文件中:
高级编辑命令:
h:把模式空间中的内容覆盖至保持空间中
H:把模式空间中的内容追加至保持空间中:
g:从保持空间取出数据覆盖至模式空间:
G:从保持空间取出内容追加至模式空间:
x:把模式空间中的内容与保持空间中的内容进行互换:
n:读取匹配到行的下一行至模式空间:
N:追加匹配到行的下一行至模式空间:
d:删除模式空间中的行:
D:删除多行模式空间中的所有行:
sed -n 'n;p' FILE:显示偶数行
sed '1!G;h;$!d' FILE: 你想显示文件内容
sed '$!N;$!D' FILE: 去除文件后两行:
sed '$!d' FILE:取出文件最后一行:
sed ‘G' FILE:
sed '/^$/d;G' FILE:
sed 'n;d' FILE: 显示奇数行
sed -n ’1!G;h;$p' FILE 逆序显示文件内容