zoukankan      html  css  js  c++  java
  • shell入门-grep-3-egrep

    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

  • 相关阅读:
    面试再问HashMap,求你把这篇文章发给他!
    Maven Nexus私库搭建及使用,你还不会吗?
    两年摸爬滚打 Spring Boot,总结了这 16 条最佳实践
    @Controller,@Service,@Repository,@Component你搞懂了吗?
    mysql 输出当前月所有日期与对应的星期
    mysql创建每月执行一次的event
    一个关于explain出来为all的说明及优化
    怎么快速了解自己的MySQL服务器
    Mysql查找所有项目开始时间比之前项目结束时间小的项目ID
    Device eth0 does not seem to be present,delaying initialization解决方法
  • 原文地址:https://www.cnblogs.com/wangshaojun/p/4975945.html
Copyright © 2011-2022 走看看