Linux 文本三剑客之 grep

Posted leihongnu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 文本三剑客之 grep相关的知识,希望对你有一定的参考价值。

Linux 系统中一切皆文件。

文件是个文本。可以读、可以写,如果是二进制文件,还能执行。

在使用Linux的时候,大都是要和各式各样文件打交道。熟悉文本的读取、编辑、筛选就是linux系统管理员的必备技能

文本处理工具:grep、awk、sed,本篇主要讲 grep

grep 行提取命令。在文件中提取和匹配符合条件的字符串行,只要一行数据中包含"搜索内容",就会列出整行内容

一般格式:grep  [选项]  搜索关键字/模式  文件

    选项:指常用的几种功能

    搜索关键字/模式:要搜的关键字/正则表达式

    文件:要搜索的对象

  常用[选项]介绍:

    -A 数字:列出符合条件的行,并列出后续的 n 行

       grep -A 3 "root" /etc/passwd:查找包含"root"的行,并列出后续的3行

    -B 数字:列出符合条件的行,并列出前面的 n 行 

    -C 数字:列出符合条件的行,并列出前后的 n 行 
    -c:统计找到的符合条件的字符串的次数
    -i:忽略大小写
    -n:输出行号

      grep -n "/bin/bash" /etc/passwd:查找可以登录的用户,并显示行号
    -v:反向査找;grep -v "/bin/bash"

      /etc/passwd:#查找不包含"/bin/bash"的行

    -m:匹配多少次后停止 -m 3:匹配3次后不往下搜索
    -e:逻辑or关系 -e 条件1 -e 条件2
    -f:文件条件,将条件放入文件(or关系)

       grep -f 1.txt /etc/passwd
    --color=auto:搜索出的关键字用颜色显示(centos7开始有别名添加颜色)
    -E:可以使用扩展正则

       过滤空行和注释行  cat /etc/fstab | grep -vE "^$|[#;]"

 

以上是关于Linux 文本三剑客之 grep的主要内容,如果未能解决你的问题,请参考以下文章

Linux入门——文本处理三剑客之grep

Linux文本处理工具三剑客之grep

Linux三剑客之grep 与 egrep

Linux 文本处理三剑客之grep

linux文本处理三剑客之grep命令详解

Linux文本三剑客之grep