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\
[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\
相关文章推荐
- Spark学习--spark-shell使用
- Spark学习(一)---Spark-shell使用
- sh_shell的基础语法1
- shell入门-grep2
- linux使用shell批量解压rar文件
- android adb shell 命令
- [脚本编程] 过云盾、D盾各种盾shell
- Shell脚本:判断当前目录下所有的文件类型
- Shell脚本:求命令行上所有的整数和
- linux shell变量获取执行结果
- shell统计日志信息
- Linux shell脚本的字符串截取
- shell与python间传递变量方法
- 自动化运维-使用Shell脚本简单实现
- source, ~/.bashrc, ~/.bash_profile详解
- Shell脚本升级CentOS php版本v
- 利用XShell 上传和下载文件
- shell ulimit -n
- shell 把两个脚本连起来
- shell 进程查询相关的命令