Linux 上文本处理三剑客:
grep:文本过滤工具(模式:pattern)
sed:stream editor 流编辑器 文本编辑工具
awk:Linux上的实现为gwak 文本报告生成器(格式化文本)
正则表达式:regual Expression REGEXP
由一类特殊字符及文本所编写的模式,其中有些字符表示其字面意义,
grep:
options:
--color=auto:对匹配到的文本着色后高亮显示
-i : ignorecase 忽略字符大小写
-o:只显示匹配到的文本字符
-v,--invert-match:显示不能被模式匹配到的行
-E:支持使用扩展的正则表达式元字符
-q, --quiet, --silent:静默模式,不输出任何信息
-A: 显示匹配到文本的后2行
((-A # :after,后#行))
~] # grep -A 2 "root" /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
-B: 显示匹配到文本的前一行
(-B # :before,后#行)
~] # grep -B 1 "root" /etc/passwd
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
-C:context ,前后各多少行
基本正则表达式元字符:
字符匹配:
. 匹配人以单个字符
[] 匹配指定范围内的任意单个字符
[^]匹配指定范围外的任意当个字符、
[[:digit:]] [[:lower:]] [[:uper:]] [[:alpha]]
匹配次数
位置锚定
分组及引用