• linux基础之grep


    grep,egrep,fgrep

    grep:根据模式搜索文本,并将符合模式的文本行显示出来

    grep [OPTIONS] PATTERN [FILE...]

    -i:忽略大小写

    --color:以高亮颜色显示

    -v:显示没有被模式匹配的行

    -o:只显示被匹配到的字符串

    -E:使用扩展正则表达式

    -A #:当某一行被匹配到,不但显示这一行,还显示其后面#行

    -B #:当某一行被匹配到,不但显示这一行,还显示其前面#行

    -C #:当某一行被匹配到,不但显示这一行,还显示其前后面#行

    grep正则表达式(基本正则表达式)(默认情况下正则表达式工作在贪婪模式下)

    .:匹配任意单个字符

    *:匹配其前面的字符任意次

    例子:a,b,ab,aab,acb,adb,amnb

     a*b:b,ab,aab,

     a.*b:ab,aab,acb,adb,amnb(a开头b结尾的字符串)

    .*:任意长度的任意字符

    ?:匹配其前面的字符1次或0次

    a?b:含有ab或b的行

    {m,n}:匹配其前面的字符至少m次,之多n次

    {1,}:至少出现一次

    []:匹配指定范围内的任意单个字符

    [^]:匹配指定范围外的任意单个字符

    字符集合:[:digit:]数字 [:lower:]小写字母 [:upper:]大写字母 [:punct:]标点符号 [:spcce:]空白字符 [:alpha:]所有字母 [:alnum:]所有数字字母

    例子:grep [[:digit]] /a.txt  查找出所有包含数字的行

    位置锚定:

    ^:锚定行首,此字符后面的字符必须出现在行首

    $:锚定行未,此字符前面的字符必须出现在行未

    ^$:空白行

    <或:其后面的任意字符必须作为单词首部出现

    >或:其前面的任意字符必须作为单词尾部出现

    分组

    ()

    例子:(ab)*:ab整体出现n次。

    后向引用

    以上正则表达式为基本正则表达式,grep默认支持基本正则表达式。

    扩展正则表达式

    .:匹配任意单个字符

    []:匹配指定范围内的单个字符

    [^]:匹配指定范围外的单个字符

    次数匹配

    *:匹配前面的字符任意次

    ?:匹配前面的字符1次或0次

    +:匹配其前字符至少一次

    {m,n}:匹配其前面的字符至少m次,之多n次

    |:或者 例子:C|cat 匹配C或cat      (C|c)at 匹配Cat或cat

    ():分组

    grep -E = egrep :即egrep默认支持扩展正则表达式

  • 相关阅读:
    WPF 修改Webbrowser的IE版本小程序(32位)
    AnyCAD OpenSource 版本下载和编译
    请求ajax失败的原因(进入到error)
    如何将多个数据的- 转为:来匹配josn格式
    jQuery ajax如何传多个值到后台页面,举例:
    java finalize方法总结、GC执行finalize的过程
    SQL Server索引碎片整理实际操作记录
    MYSQL手册
    Eclipse显示行号
    MyEclipse设置Console输出到文件
  • 原文地址:https://www.cnblogs.com/jnba/p/10522540.html
Copyright © 2020-2023  润新知