• 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
                    • 相关阅读:
                      【主流技术】聊一聊消息队列 RocketMQ 的基本结构与概念
                      Ai-WB2系列模组linux开发环境搭建
                      Python_面向对象编程
                      博客系统(升级(Spring))(四)(完)基本功能(阅读,修改,添加,删除文章)(附带项目)
                      [RK3588][android12] Launcher3:特殊分辨率(3840*484),AllApps显示异常的问题
                      数字人直播软件排名推荐,铭顺科技数字人品牌抢占“日不落”流量新技能
                      Git基本应用<二>:Git的分支管理
                      腾讯云centos7.6安装jdk
                      Matlab绘图
                      14.scrapy进阶
                    • 原文地址:https://blog.csdn.net/qq_40855100/article/details/124649354