三大基本文本处理工具
1、grep
2、sed :流编辑器
3、AWK 报告文本生成器
sed基本用法:
stream EDitor 流编辑器。属于行编辑器。
逐行进行编辑
模式空间:把所需要处理的数据放到内存,这段内存空间叫模式空间。
把匹配条件的行放到模式空间,进行编辑,然后把编辑结果显示到屏幕。
默认不编辑源文件,仅对模式空间中的数据做处理
使用语法:
sed `AddressCommand` file . . .
sed -n 不显示模式空间内容,只显示符合条件的内容
Address 指定方法:
1、指定起始行-结束行 Startline,Endline
比如 1,100 从1到100行
$:表示最后一行
$-1: 表示倒数第二行
2、/RegExp/ 使用正则表达式来指定模式
比如:/^root/ 以root开头的行
3、/pattern1/,/pattern2/ /模式1/,/模式2/ 第一次被模式1匹配到的行开始到第一次被模式2匹配到的行结束
4、linenumber 指定的行,只指定某行
5、Startline, +N 从startline开始向后N行 N+1行
Command:
d:删除符合条件的行 sed `1,2d` /etc/fstab 讲fstab文件当中1,2行删除
p:显示符合条件的行
a \"string": 在指定的行后面追加新行,内容为“string”
i \string: 在指定的行前面追加新行,内容为string
r file:将指定的文件的内容添加至符合条件的文件的行处
sed `2r /etc/issue` /etc/fstab 在fstab文件第二行后面加入文件issue的内容
w file: 将指定范围内的内容另存至指定的文件中。
s/模式/string/修饰符:查找并替换。查找符合模式的字符串替换成string。。默认只替换每行中第一次被模式匹配到的字符串
加修饰符 g: 全局替换
i:忽略字符大小写