grep实例

2023-06-07,,

grep使用:

    1.参数说明   

        -a :将 binary 文件以text 文件的方式搜寻数据

        -c :计算找到 '字符串'的次数

        -i :忽略大小写的不同

        -n :顺便输出行号

        -v :反向选择,亦即显示出没有 '字符串'内容的那一行!

        --color=auto :关键词部分加上颜色

     2.查出/etc/passwd 里包含root的行

         方式1

        grep root /etc/passwd

        方式2

        cat /etc/passwd|grep root

     3.显示行号

        cat /etc/passwd|grep -n root

     4.反取

         cat /etc/passwd|grep -v root

     5.忽略大小写

         cat /etc/passwd|grep -i root

     列子

       取出不是root可以登录的用户

       cat /etc/passwd|grep -inv root|grep -v nologin --color=auto 

     如果想给grep加上--color=auto 修改~/.bashrc加上 alias grep='grep --color=auto' source ~/.bashrc即可

     6.搜索指定文件夹下包含某个字符串的(把包含的行显示出来)

        grep  "install" /root/

       递归搜索root 及其子目录以及其字目录的子目录中包含install的行

         grep -r "install" /root/

         只显示子目录中包含install文件

         grep -lr "install" /root/

     7.使用正则

         [a,b]两者中选一个 如

         [^a]不是a

         [^a-z]不是a到z 同理[^0-9] [^A-Z]

         以上要与^a以a开头进行区分

         空白行 ^$

         2{5}-->22222

         2{2,5}-->22 222 2222 22222

         2{2,}-->22 222 22222 ...

     8.grep扩展grep -e 或者 egrep :增加了额外的正则表达式元字符集

            

       对于标准grep,如果在扩展元字符前面加\grep会自动启用扩展选项-E

          使用egrep 多行

         grep "then\+" /root/Install_Centos_LNMP_v.0.1.sh

         egrep "then+" /root/Install_Centos_LNMP_v.0.1.sh