您的位置:首页 > 运维架构 > Shell

shell入门-grep-3-egrep

2015-11-18 21:25 627 查看
grep -E == egrep

[root@wangshaojun ~]# grep --color 'r\?o' 1.txt == egrep --color 'r?o' 1.txt ^C
[root@wangshaojun ~]# egrep --color 'r?o' 1.txt

root:x:0:0:root:/root:/bin/bash //roo中ro匹配一次 o匹配一次
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

.......

特殊符号‘+’ 表示1个或多个+号前面的字符

[root@wangshaojun ~]# egrep --color 'r+o' 1.txt

[root@wangshaojun ~]# grep --color -E 'r+o' 1.txt

[root@wangshaojun ~]# grep --color 'r\+o' 1.txt

root:x:0:0:root:/root:/bin/bash
syrrrrrrrrronc:x:5:0:sync:/sbin:/bin/sync
halt:x:7:rro0:halt:/sbin:/sbin/halt
operator:x:11:0:operator:/root:/sbin/nologin

.....

////////////////////////////////////////////////////////////////////////////////////

总结特殊符号

. 任意一个字符

* *号前面的字符0个或多个

.* 任意个任意字符

? 0或1个?前面的字符

+ 1或多个+或前面的字符

《?+需要用egrep》

///////////////////////////////////////////////////////////////////////////////////

表示或者 包含root 或者nologin都可以匹配到

[root@wangshaojun ~]# egrep --color 'root|nologin' 1.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin

.....

表示并且 包含‘root’并且包含‘nologin’的

[root@wangshaojun ~]# grep --color 'root' 1.txt |grep --color 'nologin'

operator:x:11:0:operator:/root:/sbin/nologin

表示整体

[root@wangshaojun ~]# egrep --color '(rr)+' 1.txt ///表示出现1次或多次rr
syrrrrrrrrronc:x:5:0:sync:/sbin:/bin/sync
halt:x:7:rro0:halt:/sbin:/sbin/halt
gopher:x:1rrrro3:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FrrroTP User:/var/ftp:/sbin/nologin

.....

给整体指定一个范围

[root@wangshaojun ~]# egrep --color '(rr){1,3}' 1.txt
syrrrrrrrrronc:x:5:0:sync:/sbin:/bin/sync
halt:x:7:rro0:halt:/sbin:/sbin/halt
gopher:x:1rrrro3:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FrrroTP User:/var/ftp:/sbin/nologin

给整体指定一个倍数

[root@wangshaojun ~]# egrep --color '(rr){3}' 1.txt
syrrrrrrrrronc:x:5:0:sync:/sbin:/bin/sync

///////////////////////////////////////////////////////////////////////////////////

总结:? + () {} 需要用egrep grep -E grep\
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: