• Linux grep 命令


    Linux grep 命令 https://www.runoob.com/linux/linux-comm-grep.html
    grep命令_Linux grep命令:文本搜索工具(可使用正则表达式)http://c.biancheng.net/linux/grep.html

    在linux系统中可通过man grep命令查看帮助文档

    Linux grep 命令用于查找文件里符合条件的字符串。返回的是包含该字符串的行。

    grep [-参数] 条件 文件或目录

      条件可以是:

      • 被查找的字符串
      • 正则表达式

      参数

      • -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一行之外,显示该行之后的内容。
      grep -A num text filename
        • -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,显示该行之前的内容。
        grep -B num text filename
          • -c 或 --count : 返回计算的符合样式的行数
          grep -c text filename
            • -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后num行的内容。
            grep -C num text filename

              -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
              -E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。
              -f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
              -F 或 --fixed-regexp : 将样式视为固定字符串的列表。
              -G 或 --basic-regexp : 将样式视为普通的表示法来使用。

              • -h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。(默认不标示)
              grep -h text filename
                • -H 或 --with-filename : 在显示符合样式的那一行之前,标示该行所属的文件名称。
                grep -H text filename
                ## 返回
                filename: text所在行内容
                • 1
                • 2
                • -i 或 --ignore-case : 忽略字符大小写的差别。
                grep -i Text filename
                ## 返回
                text所在行内容
                Text所在行内容
                • 1
                • 2
                • 3

                🐖 grep 命令可以一次搜索很多个文件
                -l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。

                grep -l "text" *filename

                  -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。

                  grep -L "text" *filename
                    • -n 或 --line-number : 在显示符合样式的那一行之前,并标示出该行的行号。
                    grep -n text filename
                    ## 返回
                    num: text所在行内容
                    • 1
                    • 2
                    • -o 或 --only-matching : 只显示匹配PATTERN 部分(单词)。
                    grep -o text filename
                    ## 返回
                    text
                    text
                    • 1
                    • 2
                    • 3

                    -q 或 --quiet或–silent : 不显示任何信息。
                    -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
                    -s 或 --no-messages : 不显示错误信息。

                    • -v 或 --invert-match : 显示不包含匹配文本的所有行。
                    grep -v text filename
                      • -V 或 --version : 显示版本信息。
                      grep -V
                      ## 返回
                      grep版本信息
                      • 1
                      • 2

                      -w 或 --word-regexp : 只显示全字符合的行。

                      grep -w "text" filename
                      #等价于 grep "\<text\>" filename
                      • 1

                      -x --line-regexp : 只显示全列符合的列。
                      -y : 此参数的效果和指定"-i"参数相同。

                      • egrep 的多条件查找
                       egrep '^root|bash$' filename
                       # 等价于grep -e '^root|bash$' filename
                      • 1
                    • 相关阅读:
                      2-反对称矩阵及其指数函数
                      进程与线程的区别
                      JAVA计算机毕业设计新生入学报到管理系统Mybatis+系统+数据库+调试部署
                      2.Vue — 模板语法、数据绑定、el与data的写法、数据代理
                      Linux系统中如何开启和配置OpenGauss数据库的远程连接
                      【Android抓包】- Stetho
                      SpringBoot加载配置文件的顺序
                      java计算机毕业设计惠济区疫情期间监测管理系统源码+mysql数据库+系统+lw文档+部署
                      java.lang.Enum类下toString()方法起什么作用呢?
                      聊聊超卖
                    • 原文地址:https://blog.csdn.net/qq_40855100/article/details/124649354