美文网首页
grep命令

grep命令

作者: 古寒飞 | 来源:发表于2017-06-25 22:27 被阅读37次

    基本命令

    命令格式

    grep [参数] [条件] [文件名]

    基本用法

    grep 'a' bbb.txt

    -------------------------------------------------------------------------------

    grep的参数(option)

    -i      忽略大小写

    -o    仅显示符合条件的内容

    -e    同时根据多个条件过滤内容

    -v    反向过滤

    -E    支持扩展正则表达式

    -A n      显示符合条件的后n行内容

    -B n      显示符合条件的前n行内容

    -n     显示行号

    示例:

    grep -i 'a' bbb.txt

    grep -o 'a' bbb.txt

    grep -e 'aaa' -e 'bbb' -e 'ccc' bbb.txt

    grep -v 'aaa' bbb.txt

    grep -E 'bin|sbin' bbb.txt

    cat bbb.txt | grep -A 3 "lalala"

    cat bbb.txt | grep -B 5 "lalala"

    -------------------------------------------------------------------------------

    grep的条件

    有以下五种:

    01---按“正则表达式”匹配

    02---按“特殊字符集”匹配

    03---按“字符的位置”匹配

    04---按“出现的次数”匹配

    05---匹配“空行”

    01.按正则表达式匹配

    匹配任意单个字符(.)

    示例:grep '.j' bbb.txt
    ---------------------------------------------

    匹配其中任意一个字符([ ])

    示例:grep '[jtk]' bbb.txt
    ---------------------------------------------

    匹配连续字符范围(“-”,例如:[a-z][A-Z][0-9][a-zA-Z])

    示例:grep '[a-z]' bbb.txt
    ---------------------------------------------

    匹配结果取反(“^”,例如:[^a-z][^0-9])

    示例:grep '[^a-z]' bbb.txt

    -------------------------------------------------------------------------------

    02.特殊字符集匹配

    [[:digit:]]      任意单个数字

    [[:alpha:]]    任意单个字母

    [[:upper:]]    任意单个大写字母

    [[:lower:]]     任意单个小写字母

    [[:alnum:]]    任意单个数字、字母

    [[:space:]]    任意单个空白字符

    [[:punct:]]    任意单个标点
    ---------------------------------------------

    示例:grep "[[:digit:]]" bbb.txt

    -------------------------------------------------------------------------------

    03.匹配字符出现的位置

    ^string     匹配以string开头的行

    示例:grep '^w' bbb.txt
    ---------------------------------------------

    string$     匹配以string结束的行

    示例:grep 'b$' bbb.txt

    -------------------------------------------------------------------------------

    04.匹配字符出现的次数

    *      前一个字符出现任意次 ab*

    示例:grep 'ab*' bbb.txt
    ---------------------------------------------

    \?     前一个字符出现0次或者1次可有可无

    示例:grep 'ab\?' bbb.txt
    ---------------------------------------------

    \+      前一个字符出现1次或者多次(反斜杠代表转义)

    示例:grep 'ab\+' bbb.txt
    ---------------------------------------------

    \{4\} 前一个字符精确出现4次(反斜杠代表转义)

    示例:grep 'a\{4\}' bbb.txt
    ---------------------------------------------

    {2,4}匹配出现2~4次的行        {2,}匹配出现大于2次的行

    示例:grep 'a\{2,4\}' bbb.txt

    示例:grep 'a\{2,\}' bbb.txt

    -------------------------------------------------------------------------------

    05.匹配空行

    示例:grep '^$' bbb.txt

    -------------------------------------------------------------------------------

    全文结束!!!

    相关文章

      网友评论

          本文标题:grep命令

          本文链接:https://www.haomeiwen.com/subject/gsgrcxtx.html