sed用法
文本处理三剑客;
grep,egrep, fgrep:文本过滤器
sed:Stream EDitor,流编辑器,行
awk:文本格式化工具,报告生成器
sed语法格式;
sed [OPTION]...{script-only-if-no-other-script} [input-file]...
常用选项;
-n:不输出模式空间中的内容至屏幕;
-e script,:多点编辑;
-f /PATH/TO/SED_SCRIPT_FILE;每行一个编辑命令;
-r, --regexp-extended:支持使用扩展正则表达式;
-i[SUFFIX],--in-place[=SUFFIX]:直接编辑原文件;
地址定界;
(1) 空地址:对全文进行处理;
(2) 单地址:
#:指定行;
/pattern/:被此模式所匹配到的每一行;
(3) 地址范围
#,#:
#,+#:
#,/pat1/
/pat1/,/pat2/
$:最后一行;
(4) 步进:~
1~2:所有奇数行
2~2:所有偶数行
编辑命令:
d:删除;
p:显示模式空间中的内容;
a \text:在行后面追加文本“text”,支持使用\n实现多行追加;
i \text:在行前面插入文本“text”,支持使用\n实现多行插入;
c \text:把匹配到的行替换为此处指定的文本“text”;
w /PATH/TO/SOMEFILE:保存模式空间匹配到的行至指定的文件中;
r /PATH/FROM/SOMEFILE:读取指定文件的内容至当前文件被模式匹配到的行后面;文件合并;
=:为模式匹配到的行打印行号;
!:条件取反;
地址定界!编辑命令;
s///:查找替换,其分隔符可自行指定,常用的有s@@@, s###等;
替换标记:
g:全局替换;
w/PATH/TO/SOMEFILE:将替换成功的结果保存至指定文件中;
p:显示替换成功的行;