• 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

  • 相关阅读:
    ansible笔记(三)--模块讲解
    Linux 后台执行top 出错“TERM environment variable not set” “top: failed tty get”
    信息熵与TF-IDF 学习笔记
    大数运算 文献收藏
    树状数组 Binary Indexed Tree 学习笔记
    Linux Apache 安装(无外网)
    大数定律与中心极限定理
    Python 如何同时遍历两个文件
    监督学习模型分类 生成模型vs判别模型 概率模型vs非概率模型 参数模型vs非参数模型
    unittest生成测试报告
  • 原文地址:https://www.cnblogs.com/wangshaojun/p/4975945.html
Copyright © 2020-2023  润新知