温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

grep命令常用参数

发布时间:2020-05-28 01:41:51 来源:网络 阅读:1542 作者:小杨杨雪松 栏目:编程语言

       grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。常用的有grep,egrep,fgrep。它们的区别如下:

              grep:在没有参数的情况下,只能输出符合RE(regular expression)字符

              egrep:它等同于grep -E,和grep最大的区别就是表现在转义字符上,比如grep把字符?+{}|()解释为普通字符,我们用grep时,只能使用转意字符,比如做次数匹配时,用\{1,3\},egrep则不需要,直接用{1,3}就行。

              fgrep:等同于与grep -f,但是不能使用正则表达式,所有的字符匹配功能均以消失。


接下来我们就来说说grep常用的一些参数:

      -C:打印出匹配的行的上下文前后各 n行。也就是说不但能匹配到指定的那一行,而且字符前后所指定的n行也能显示出来。如下:

      grep命令常用参数

    

     -i: 忽略模式 PATTERN 和输入文件中的大小写的分别。也就是不区分大小写字符。如下:

      grep命令常用参数


     -n:在输出的每行前面加上它所在的文件中它的行号,如下

         grep命令常用参数

        由上面的file文件可知,abc在第二行。


      -v: 改变匹配的意义,只选择不匹配的行。也就是说反向匹配,比如我们要匹配abc,匹配的就不是abc,是不是有点乱?

         grep命令常用参数


      -o : 显示匹配的行中与 PATTERN 相匹配的部分。如下:

          grep命令常用参数


        -c:为每一个输入文件打印一个匹配的行的总数。如下:

          grep命令常用参数


        -A n:输出匹配到的行,并显示其后的n行;如下:

         grep命令常用参数


       -B n:输出匹配的行,并输出其前面的n行,如下:

         grep命令常用参数


        -l:匹配多个文件时,只显示匹配的文件名,如下:

         grep命令常用参数


         -L:和上面的-l相对,显示不匹配的文件名,如下:

         grep命令常用参数


          -V:显示版本号:

           grep命令常用参数


          -q:安静。不向标准输出写任何东西。如果找到任何匹配的内容就立即以状态值 0 退出,即使检测到了错误:

           grep命令常用参数

            我们有一个file文件,里面的内容是 aaa,当我们不加-q选项时,直接给我门匹配到了并输出到屏幕上,加上-q选项之后,没有往终端输出任何消息,但我们echo它的状态码时,确实为0.


          -R,-r: 递归地读每一目录下的所有文件。


         ^$:代表空行:

          grep命令常用参数


          -b:在输出的每行前面同时打印出当前行在输入文件中的字节偏移量。如下:

           grep命令常用参数

              这里注意,选项-b -o一般总是配合使用。


           -e:该选型可以匹配多个模式,如下:

           grep命令常用参数

           上面我们想匹配name和yxs这两个字符串,可以使用-e选项。


          grep命令的选型很多很多,今后慢慢接触再慢慢了解吧,先说到这里。


         




         


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI