三剑客之Grep文本过滤命令检索
1、Grep定义
- grep 命令是一种强大的文本搜索工具,根据用户指定的“模式”对目标文本进行匹配检- 查,打印匹配到的行
- 由正则表达式或者字符及基本文本字符所编写的过滤条件
- Global search regular expression and print out the line
- 全面搜索研究正则表达式并显示出来
2、Grep用法
grep [匹配条件] [处理文件]
3、Grep示例
# grep root /etc/passwd
# grep ^root /etc/passwd
# grep root$ /etc/passwd
# grep '\<root\>' /etc/passwd
# grep root -i /etc/passwd
# grep root -v /etc/passwd
# grep root -c /etc/passwd
# grep root -n /etc/passwd
# grep '\<root\>' -r /tmp
# grep ^$ /etc/passwd
# grep -e root -e test /etc/passwd
# grep -E "root|ROOT" /etc/passwd
# grep -B 5 "^test" /etc/passwd
# grep -A 5 "^root" /etc/passwd
# grep -C 5 "^test" /etc/passwd
- 匹配字符串 ” t 开头+ 中间四个字母+t 结尾”
# grep 't....t' /etc/passwd
- 匹配字符串 ” t 开头+ 中间两个字母+t 结尾”
# grep 't..t' /etc/passwd
# grep 't...' /etc/passwd
# grep '...t' /etc/passwd
grep中字符的匹配次数
* #其前面的字符可以出现任意次,即 [0-任意次]
\? #其前面的字符可有可无,即 [0-1次]
\+ #其前面的字符至少出现一次,即 [1-任意次]
\{n\} #其前面的字符出现n次,即 [n次]
\{m,n\} #其前面的字符 [最少出现m次,最多出现n次]
\{0,n\} #其前面的字符 [0-n次]
\{m,\} #其前面的字符 [至少m次]
\(xy\)\{n\}xy #其前面的字符[n次]
.* #关键字之间匹配任意字符