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. IIS SMTP status codes

    Here are the meaning of SMTP status codes. Status Code Description 211 System status, or system help ...

  2. Android五:Activity

    生命周期: onCreate onStart onResume onPause:在该状态如果有优先级更高的程序,那此进程可能被kill;如果是被重新执行,则回到onResume状态. onStop : ...

  3. mvc 控制器,视图,Razor 语法

    mvc 控制器controller:响应用户请求,并修改模型model;输入数据的处理,输出view数据的提供: url入控制器的方法有关联:MVC提供的是方法调用结果: mvc model:是对应用 ...

  4. PLSQL_闪回操作2_Fashback Version Query

    2014-12-09 Created By BaoXinjian

  5. PLSQL_性能优化系列14_Oracle High Water Level高水位分析

    2014-10-04 Created By BaoXinjian 一.摘要 PLSQL_性能优化系列14_Oracle High Water Level高水位分析 高水位线好比水库中储水的水位线,用于 ...

  6. BestCoder Round #84 Bellovin

    Bellovin 题意: 给个中文链接:戳戳戳 题解: 这个题其实就是让你求每一位的最长公共子序列,之后输出就好了,求这个有2个算法,一个是n方,另一个nlogn,所以显然是nlogn的算法,其实这就 ...

  7. cf 61 E. Enemy is weak 离散化+树状数组

    题意: 给出一个数组,数组的每一个元素都是不一样的,求出对于3个数组下标 i, j, k such that i < j < k and ai > aj > ak where ...

  8. socket 发送发送HTTP请求

    socket方式: $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); //socket_set_option($socket, SOL_S ...

  9. semanage: 未找到命令

    [root@hn ~]# semanage port -l|grep ssh-bash: semanage: 未找到命令 yum -y install policycoreutils-python

  10. oracle修改列的类型

    alter table table_name modify column_name datatype;