grep是Global search Regular Expression and Print out the line的简称。

1. grep命令基本用法

命令格式: grep [选项][模式][文件…]

选项

意义

-c

只输出匹配行的数量

-i

搜索时忽略大小写

-h

查询多文件时不显示文件名

-l

只列出符合匹配的文件名,而不列出具体匹配行

-n

列出所有匹配行,并显示行号

-s

不显示不存在或无匹配文本的错误信息

-v

显示不包含匹配文本的所有行

-w

匹配整词

-r

递归搜索,不仅搜索当前工作目录,而且搜索子目录

-E

支持扩展的正则表达式

-F

不支持正则表达式,按照字符串的字面意思进行匹配

注:只要模式中包含空格,就需要使用双引号将模式括起来。

grep的多文件操作(aa bb为两个文件)

2. grep的选项的含义和用法

2.1 -c选项

在aa,bb两个文件中有两行包含hello

2.2 -n选项

aa,bb文件中的第1行包含hello并打印出信息

2.3 -v选项

2.4 -i选项

在aa文件中搜索不区分大小写的HELLO所有行

2.5 -l选项

搜索当前目录下所有文件包含hello的文本行,只列出文件名

2.6 -s选项

2.7 -r选项

2.8 -w和-x选项

加上-w选项后,*被解释为普通字符。

-x表示匹配整行,即当文件有整行内容匹配时,才输出结果。

2.9 -q选项

加上-q选项不再输出结果,而是以退出状态表示是否成功。

退出状态0表示搜索成功,退出状态1表示未搜索到满足模式的文本行,退出状态2表示命令或程序由于错误而未执行。

3 grep和正则表达式

3.1 匹配行首

3.2 设置大小写

-i可以忽略大小写,也可以用[]来实现

3.3 匹配重复字符

显示已h开头,重复h任意次,然后字母是e的

3.4 转义符

转义符\屏蔽其意

 

正则表达式2——grep命令的更多相关文章

  1. Linux - 结合正则表达式使用grep命令

    Grep with Regular Expression grep命令基本用法 grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明: ...

  2. Natas10 Writeup(正则表达式、grep命令)

    Natas10: 页面与上一关类似,只是增加了提示“出于安全原因,我们现在过滤某些字符”. 查看源码,发现关键代码如下: $key = ""; if(array_key_exist ...

  3. linux 正则表达式 使用grep命令

    最常应用正则表达式命令是 awk sed grep [root@MongoDB ~]# cat mike.log I am mike! I like linux. I like play footba ...

  4. 快速掌握grep命令及正则表达式

    Linux系统自带了支持拓展正则表达式的 GNU 版本 grep 工具,所有的Linux发行版中均默认安装grep ,grep 命令被用来检索一台服务器或工作站上任何位置的文本信息,如何在 Linux ...

  5. Linux学习笔记之grep命令和使用正则表达式

    0x00 正则表达式概述 正则表达式是描述一些字符串的模式,是由一些元字符和字符组成的字符串,而这些元字符是一些表示特殊意义的字符,即被正则表达式引擎表达的字符表示与其本意不同的一些字符. 0x01  ...

  6. 通过 mysqlbinlog 和 grep 命令定位binlog文件中指定操作

    1.binlog日志基本知识 MySQL的二进制日志binlog可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句(除了数据查询语句select),以事件形式记录,还包含语句所执行的消耗 ...

  7. Linux grep 命令中的正则表达式详解

    在 Linux .类 Unix 系统中我该如何使用 Grep 命令的正则表达式呢? Linux 附带有 GNU grep 命令工具,它支持扩展正则表达式(extended regular expres ...

  8. grep命令及基本正则表达式

    grep命令是Linux系统中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功 ...

  9. 07 grep命令与正则表达式

    grep命令 首先我们知道grep命令是用来做文件内容过滤的!如果你要在文件中查找一些对应的内容,我们如何来过滤找到其中我们需要符合条件的内容呢?grep命令结合正则表达式就可以实现: grep.eg ...

随机推荐

  1. Python处理Excel文档(xlrd, xlwt, xlutils)

    简介 xlrd,xlwt和xlutils是用Python处理Excel文档(*.xls)的高效率工具.其中,xlrd只能读取xls,xlwt只能新建xls(不可以修改),xlutils能将xlrd.B ...

  2. c++中的peek函数

    c++中 cin.peek()函数 其返回值是一个char型的字符,返回值是指针指向的当前字符, 但是只是观测,指针任停留在当前位置,并不后移.如果要访问的字符是文件结束符,则函数值是EOF(-1); ...

  3. 【转】一道SQL SERVER DateTime的试题

    学习过上一篇SQL SERVER DateTime精度的文章后.再来做一道题. IF ('2011-07-31 00:00:00.000' BETWEEN '2011-07-01' and '2011 ...

  4. C# new 和 override.

    http://www.dotblogs.com.tw/skychang/archive/2012/05/10/72114.aspx?fid=60865

  5. 单选按钮选中js的处理

    function FinancialinfosetController($scope, $http, $timeout, $location, $rootScope, $routeParams) { ...

  6. 学习ios键盘和textfield之间操作体会

    所需要计算就是,键盘移动以后是否遮挡住了textfield,需要用到的计算公式: int offset = 键盘的高度-(self.frame.size.height - self.textfiled ...

  7. RabbitMQ介绍2 - AMQP协议

    这一节介绍RabbitMQ的一些概念,当然也是AMQP协议的概念.官方网站也有详细解释,包括协议的命令: http://www.rabbitmq.com/tutorials/amqp-concepts ...

  8. js 事件函数中的参数带换行符或换行标签都不能起作用的解决方法

    把问题参数值赋给标签的属性data-value,通过属性值获取参数值.

  9. CQL操作

    http://docs.datastax.com/en/cql/3.1/pdf/cql31.pdf CQL是Cassandra Query Language的缩写,目前作为Cassandra默认并且主 ...

  10. 为FaceBook审核提交模拟器包及自己验证模拟器包

    为FaceBook审核提交模拟器包及自己验证模拟器包折腾了一番,因为我的项目是用cocoapods管理的,所以跟普通直接运行name.xcodeproj项目有所不同. 切入正题 1.先设置 relea ...