首页 > 代码库 > grep命令

grep命令

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

parttern: 文本字符,正则的元字符组成的匹配条件

    -i:ingore case

    --color: 高亮显示

    -v:invert match  显示为匹配的行(反向查找)

    -o:only match 只显示被漠视匹配到的行

    -E: 使用扩展正则,=egrep

    -A: after 显示匹配行及其下的n行  例: -A2 显示匹配行及其下的2行

    -B: befor 显示匹配行及其上的n行  例: -B2

    -C: context 显示匹配行及其上下各n行  例: -C2


正则:

    元字符:     

            .  : 匹配任意单个字符

    字符次数:

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

            .* : 任意长度的任意字符(贪婪匹配)

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

            {m,n} : 匹配前面字符至少m次最多n次 (需要转义)

    位置锚定:

            ^ : 铆定行首(此字符后面的内容必须出现在行首)

            $ : 锚定行尾

            ^$ : 空白行

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

            \> 或 \b : 其前的字符必须作为单词的尾部出现

    分组:

            ( ) : 将内容分组

            \num : 后向引用,前面出现的内容,在后面可以调用  \1 调用第一个左括号以及与之对应的右括号所包含的内容.



扩展正则: egrep

    字符匹配: *  .  []  [^]  [m,n]  与正则相同

    次数匹配: *  ?  与正则相同

        + : 其前字符至少一次

    位置铆定: ^ $ \< \> 同正则

    分组:     同正则

    或者: a|b a或者b 匹配全部左面或全部右面(并不像正则一样只匹配一个字符  C|cat  匹配 cat 或者C )




                  

grep命令