正则表达式2——grep命令
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命令的更多相关文章
- Linux - 结合正则表达式使用grep命令
Grep with Regular Expression grep命令基本用法 grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明: ...
- Natas10 Writeup(正则表达式、grep命令)
Natas10: 页面与上一关类似,只是增加了提示“出于安全原因,我们现在过滤某些字符”. 查看源码,发现关键代码如下: $key = ""; if(array_key_exist ...
- linux 正则表达式 使用grep命令
最常应用正则表达式命令是 awk sed grep [root@MongoDB ~]# cat mike.log I am mike! I like linux. I like play footba ...
- 快速掌握grep命令及正则表达式
Linux系统自带了支持拓展正则表达式的 GNU 版本 grep 工具,所有的Linux发行版中均默认安装grep ,grep 命令被用来检索一台服务器或工作站上任何位置的文本信息,如何在 Linux ...
- Linux学习笔记之grep命令和使用正则表达式
0x00 正则表达式概述 正则表达式是描述一些字符串的模式,是由一些元字符和字符组成的字符串,而这些元字符是一些表示特殊意义的字符,即被正则表达式引擎表达的字符表示与其本意不同的一些字符. 0x01 ...
- 通过 mysqlbinlog 和 grep 命令定位binlog文件中指定操作
1.binlog日志基本知识 MySQL的二进制日志binlog可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句(除了数据查询语句select),以事件形式记录,还包含语句所执行的消耗 ...
- Linux grep 命令中的正则表达式详解
在 Linux .类 Unix 系统中我该如何使用 Grep 命令的正则表达式呢? Linux 附带有 GNU grep 命令工具,它支持扩展正则表达式(extended regular expres ...
- grep命令及基本正则表达式
grep命令是Linux系统中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来. grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功 ...
- 07 grep命令与正则表达式
grep命令 首先我们知道grep命令是用来做文件内容过滤的!如果你要在文件中查找一些对应的内容,我们如何来过滤找到其中我们需要符合条件的内容呢?grep命令结合正则表达式就可以实现: grep.eg ...
随机推荐
- MappedByteBuffer读写文件
一. MappedByteBuffer java把文件映射到内存中,避免堆内存产生大对象引起full gc.mappedByteBuffer的读写速度都要超过堆内读写文件的速度 public clas ...
- PLSQL_Database Link的基本概念和用法(概念)
2014-06-08 Created By BaoXinjian
- RabbitMQ介绍1 - 由来
RabbitMQ是一个异步消息通信中间件,用erlang语言开发,实现了AMQP(Advanced Message Queue )协议,是一个开源产品,官方网站:http://www.rabbitmq ...
- catalan数及笔试面试里那些相关的问题(转)
一.catalan数由来和性质 1)由来 catalan数(卡塔兰数)取自组合数学中一个常在各种计数问题中出现的数列.以比利时的数学家欧仁·查理·卡塔兰 (1814–1894)命名. 卡塔兰数的一般项 ...
- Mac下finder中无法关闭的小条
就是这个恶心的小东西,根本无法关闭.其实就是在finder中无意中输入了中文导致的(不是按Alt+F , 就是打开finder然后输入中文) 可以通过继续输入中文然后按esc退出.也可以用下面的设置尽 ...
- ylbtech-Unitity-cs:计算阶乘值
ylbtech-Unitity-cs:计算阶乘值 1.A,效果图返回顶部 1.B,源代码返回顶部 1.B.1, using System; namespace Functions { public ...
- 原始ajax发起请求并反馈
在用户登陆的时候,离开用户.密码输入框即进行验证:ajax发起请求进行验证的: login.jsp代码: <%@ page language="java" contentTy ...
- java io InputStream 转 byte
InputStream is ; ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] b = new byte[1024] ...
- Java 线程间通讯(管道流方式)
一.管道流是JAVA中线程通讯的常用方式之一,基本流程如下: 1)创建管道输出流PipedOutputStream pos和管道输入流PipedInputStream pis 2)将pos和pis匹配 ...
- SQL查询结果增加序号列
--sql 2000 ) ,学号 ,姓名 from tb t --sql 2005 select 序号 = row_number() over(order by 学号),学号 ,姓名 from tb ...