正则表达式:注意三剑客才能读懂。
grep:
文本过滤工具(模式:pattern)
语法:grep [OPTIONS] PATTERN [file]
参数选项:
-
--color=auto对匹配到的文本进行着色显示 -
-v显示不被PATTERN匹配到的行 -
-i忽略字符大大小写 -
-n显示匹配的行号 -
-c统计匹配的行数 -
-o仅显示匹配到的字符串 -
-q静默模式,不输出任何信息 -
-A#after,后#行 -
-B#before,前#行 -
-Ccontext,前后各#行 -
-e实现多个选项间的逻辑or关系(gerp -e ‘cat’ -e ‘dog’ file) -
-w匹配整个单词 -
-E使用ERE,相当于egrep -
-F相当于fgrep,不支持正则表达式
sed:
流编辑器,一次处理一行内容,把当前处理的行放入模式空间,然后用sed命令进行处理,处理完成后把模式空间内容送往屏幕,然后执行下以循环。
语法: sed [option]… ‘script’ inputfile
1.参数选项:
-
-n不输出模式空间内容到屏幕 -
-e对点编辑 -
-f从指定文件中读取编辑脚本 -
-r支持使用扩展正则表达式 -
-i直接编辑文件(改变原文件内容) -
-i.bak备份文件并原处编辑
2.script 地址范围 -
不给地址:对全文进行处理
-
单地址:# 指定的行 $ 最后一行
-
范围地址:#,#
-
~:步进(1~2 奇数行,2~2 偶数行)
3.编辑命令:
-
d删除模式空间匹配的行,并立即启用下一轮循环 -
p打印当前模式空间内容,追加到默认输出之后 -
a [\]text1在指定行后面追加文本,支持使用\n实现多行追加 -
i [\]text在行前面插入文本 -
c [\]text替换行为单行或多行文本 -
w /path/somefile保存模式匹配的行至指定文件 -
r /path/somefile读取指定文件的文本至模式空间中匹配到的行后 -
=为模式空间中的行打印行号 -
!模式空间中匹配行取反处理 - s///:查找替换,支持使用其它分隔符,s@@@,s###
-
g行内全局替换 -
p显示替换成功的行 - *
w /PATH/TO/SOMEFILE将替换成功的行保存至文件中
-
awk:
将输出的文本格式化
语法: awk [options] ‘program’ file…
- program:pattern{action statements;…}
-
pattern部分决定动作语句何时触发及触发事件
BEGIN,END -
ction statements对数据进行处理,放在{}内指明
print, printf
2.选项参数:
-
-F指明输入时用到的字段分隔符 -
-vvar=value 自定义变量
