正则表达式grep用法详解

 更新时间:2019-04-17 22:00:20   作者:佚名   我要评论(0)

语法:grep 选项 ‘word' filename


-c:打印符合要求的行数

-i:不区分大小写

-n:在输出符合要求的行的同时显示行号

-v:打印不符合要求的行

-A:

语法:grep 选项 ‘word' filename

-c:打印符合要求的行数
-i:不区分大小写
-n:在输出符合要求的行的同时显示行号
-v:打印不符合要求的行
-A:后跟一个数字n,表示打印符合要求的行以及下面n行
-B:后跟一个数字n,表示打印符合要求的行以及上面n行
-C:后跟一个数字n,表示打印符合要求的行以及上下各n行
-r:会把目录下所有的文件全部遍历
--color:把匹配到的关键词用红色标示

例子:

过滤出带有某个关键词的行并输出行号

grep -n ‘root' 1.txt

过滤出不带有某个关键词的行并输出行号

grep -nv ‘root' 1.txt

过滤出所有包含数字的行

grep ‘[0-9]‘ 1.txt

过滤出所有不包含数字的行

grep -v ‘[0-9]‘ 1.txt

去除所有以#开头的行

grep -v ‘^#‘ 1.txt

去除所有空行和以#开头的行

grep -v ‘^$‘ 1.txt|grep -v ‘^#‘

过滤出以英文字母开头的行

grep ‘^[a-zA-Z]‘ 1.txt

过滤出以非数字开头的行

grep -v ‘^[0-9]‘ 1.txt或者grep ‘^[^0-9]‘ 1.txt

过滤任意一个或多个字符

grep ‘r.o‘ 1.txt;grep ‘rt‘ 1.txt ;grep ‘r.t‘ 1.txt

过滤出包含root的行以及下面一行

grep -A1 ‘root‘ 1.txt

过滤出包含root的行以及上面一行

grep -B1 ‘root‘ 1.txt

指定过滤字符次数

grep ‘o{2}‘ 1.txt

把一个目录下,过滤所有.php文档中含有eval的行

grep -r --include=".php" ‘eval‘ /data/

过滤两个或多个关键词

grep -E ‘123|abc‘ filename #找出文件中包含123或者abc的行

或者egrep ‘123|abc‘ filename

或者awk ‘/123|abc/‘ filename

egrep=grep -E

匹配1个或者1个以上+前面的字符

egrep ‘o+‘ 1.txt

匹配0个或者1个?前面的字符

egrep ‘o?‘ 1.txt

匹配roo或者匹配body

egrep ‘roo|body‘ 1.txt

用括号表示一个整体,下面例子会匹配roo或者ato

egrep ‘r(oo)|(at)o‘ 1.txt

匹配1个或者多个oo

egrep ‘(oo)+‘ 1.txt

.:表示任意一个字符
:表示0个或多个前面的字符
+:表示1个或多个+前面的字符
?:表示0个或1个?前面的字符
.*:表示任意个任意字符(包含空行)
注意:+和?grep不支持,egrep才支持。

总结

以上所述是小编给大家介绍的正则表达式grep用法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

  • linux grep正则表达式与grep用法详解
  • grep用法详解 grep与正则表达式

相关文章

  • 正则表达式grep用法详解

    正则表达式grep用法详解

    语法:grep 选项 ‘word' filename -c:打印符合要求的行数 -i:不区分大小写 -n:在输出符合要求的行的同时显示行号 -v:打印不符合要求的行 -A:
    2019-04-17
  • 解决正则表达式\w和\d的疑惑

    解决正则表达式\w和\d的疑惑

    <&#63;php $string='April15,2003'; $pattern='/(\w+)(\d+),(\d+)/i'; $replacement='${1},${3}'; echo preg_replace($pattern,$replacement,$string); &#6
    2019-04-17
  • 浅谈PHP进程管理

    浅谈PHP进程管理

    这篇文章是对之前一篇文章的补充和改进, 创建一个主(master)进程,主进程安装定时器,每隔5分钟检测一次队列长度,根据队列长度计算需要的worker进程, 然后创
    2019-04-17
  • PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】

    PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】

    本文实例讲述了PHP实现的只保留字符串首尾字符功能。分享给大家供大家参考,具体如下: 整理提供两个PHP函数,用于字符串的隐藏效果 ①. 隐藏部分字符串 /*
    2019-04-17
  • ASP.NET Core应用错误处理之DeveloperExceptionPageMiddleware中间件呈现“开发者异常页面”

    ASP.NET Core应用错误处理之DeveloperExceptionPageMiddleware中间件呈现“开发者异常页面”

    前言 在《ASP.NET Core应用的错误处理[1]:三种呈现错误页面的方式》中,我们通过几个简单的实例演示了如何呈现一个错误页面,这些错误页面的呈现分别由三个对
    2019-04-17
  • PHP添加PNG图片背景透明水印操作类定义与用法示例

    PHP添加PNG图片背景透明水印操作类定义与用法示例

    本文实例讲述了PHP添加PNG图片背景透明水印操作类定义与用法。分享给大家供大家参考,具体如下: 图片相关操作类 class ImageTool { private $imagePath;
    2019-04-17
  • 掌握PHP垃圾回收机制详解

    掌握PHP垃圾回收机制详解

    php的垃圾回收机制可以简单总结为 引用计数 写时复制 COW机制, 本文主要和大家分享掌握php垃圾回收机制的知识,希望能帮助到大家。 引用计数基本知识 官网的
    2019-04-17
  • 详解使用React制作一个模态框

    详解使用React制作一个模态框

    模态框是一个常见的组件,下面让我们使用 React 实现一个现代化的模态框吧。 组件设计 模态框想必大家都很熟悉,是工作中常用的组件,可以让我们填写或
    2019-04-17
  • Node.js + express基本用法教程

    Node.js + express基本用法教程

    本文实例讲述了Node.js + express基本用法。分享给大家供大家参考,具体如下: 这里来讲下 express 框架的使用,编译的环境是 VS Code ,这里我已经配饰了阿
    2019-04-17
  • vue自定义指令用法经典实例小结

    vue自定义指令用法经典实例小结

    本文实例总结了vue自定义指令用法。分享给大家供大家参考,具体如下: 自定义指令: 一、属性: Vue.directive(指令名称,function(参数){ this.el -> 原生
    2019-04-17

最新评论