Grep with Regular Expression

grep命令基本用法

grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名
参数说明:

-a:将二进制文档以文本方式处理
-c:显示匹配次数
-i:忽略大小写差异
-n:在行首显示行号
-A:After的意思,显示匹配字符串后n行的数据
-B:before的意思,显示匹配字符串前n行的数据
-v:显示没有匹配行
--color:以特定颜色高亮显示匹配关键字

针对“–color”选项,在.bashrc或者.bash_profile文件中加入:alias grep=grep --color=auto,生效后,grep的搜索结果自动高亮匹配。
针对‘搜寻字符串’选项,使用正则表达式时必须用单引号(’’)括起来,避免与shell的元字符冲突。

基本正则表达式

^word
搜寻以word开头的行。
例如:搜寻以#开头的脚本注释行。 grep –n ‘^#’ regular.txt

word$
搜寻以word结束的行
例如,搜寻以‘.’结束的行。 grep –n ‘.$’ regular.txt

.
匹配任意一个字符。
例如:grep –n ‘e.e’ regular.txt
匹配e和e之间有任意一个字符,可以匹配eee,eae,eve,但是不匹配ee。

\
转义字符。
例如:搜寻’,’是一个特殊字符,在正则表达式中有特殊含义。必须要先转义。 grep –n ‘\” regular.txt

*
前面的字符重复0到多次。
例如:匹配gle,gogle,google,gooogle等等。 grep –n ‘go*gle’ regular.txt

[list]
匹配一系列字符中的一个。
例如:匹配gl,gf。  grep –n ‘g[lf]’ regular.txt

[n1-n2]
匹配一个字符范围中的一个字符。
例如:匹配数字字符。  grep –n ‘[0-9]’ regular.txt

[^list]
匹配字符集以外的字符
例如:匹配非o字符。  grep –n ‘[^o]‘ regular.txt

\{n1,n2\}
前面的字符重复n1,n2次
例如:匹配google,gooogle。 grep –n ‘go\{2,3\}gle’ regular.txt

\<word
单词是的开头。
例如:匹配以g开头的单词。 grep –n ‘\<g’ regular.txt

word\>
匹配单词结尾
例如:匹配以tion结尾的单词。 grep –n ‘tion\>’ regular.txt

扩展正则表达式

在基本正则表达式的基础上,增加一些元数据,简化了字符串的匹配。grep可以通过参数-E支持扩展正则表达式。
egrep是grep的一个扩展命令,和grep -E等价,用来支持扩展正则表达式。

+
重复前面字符1到多次。
例如:匹配god,good,goood等等字符串。 grep –nE go+d’ regular.txt

?
匹配0或1次前面的字符
例如:匹配gd,god。 grep –nE ‘go?d’ regular.txt

| 或(or)的方式
匹配多个字串
例如:匹配god或者good。 grep –nE ‘god|good’ regular.txt

()
匹配整个括号内的字符串,原来都是匹配单个字符
例如:搜寻good或者glad。 grep –nE ‘g(oo|la)d’ regular.txt

Linux - 结合正则表达式使用grep命令的更多相关文章

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

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

  2. Linux中find、grep命令详细用法

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下: find命令 find命令的一般形式 ...

  3. linux下find和grep命令详解

    在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍find.grep命令,他哥俩可以算是必会的linux命令,我几乎每天都要用到他们.本文结构如下: find命令 find命令的一般形式 ...

  4. Linux基础-正则表达式整理---------------grep、sed、awk

    目录:    Ⅰ:正则表达式    Ⅱ:作业 Ⅰ:正则表达式 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. 在lin ...

  5. 【Linux】- ps -ef |grep 命令

    ps:将某个进程显示出来 grep:查找 |:管道命令 表示ps命令与grep同时执行 PS是LINUX下最常用的也是非常强大的进程查看命令 grep命令是查找,是一种强大的文本搜索工具,它能使用正则 ...

  6. linux的管道 |和grep命令以及一些其他命令(diff,echo,cat,date,time,wc,which,whereis,gzip,zcat,unzip,sort)

    linux提供管道符号“|”,作用是命令1的输出内容作为命令2的输入内容.通常与grep命令一起使用. 格式:命令1 |命令2 grep命令:全称为global regular expression ...

  7. Linux安全基础:grep命令的使用

    grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.Unix的 ...

  8. 正则表达式2——grep命令

    grep是Global search Regular Expression and Print out the line的简称. 1. grep命令基本用法 命令格式: grep [选项][模式][文 ...

  9. 07: linux中正则表达式与grep使用

    1.1 linux中正则表达式 1.^linux        以linux开头的行 2.$php         以php结尾的行 3..                匹配任意单字符 4..+  ...

随机推荐

  1. 吴裕雄 python深度学习与实践(7)

    import cv2 import numpy as np img = np.mat(np.zeros((,))) cv2.imshow("test",img) cv2.waitK ...

  2. html转换pdf

    项目需求:移动端APP项目需要在手机上签订合同,将html转换成pdf格式的文件 解决方案:是用插件wkhtmltopdf; 记录用法:1.网址https://wkhtmltopdf.org/ 下载压 ...

  3. ztree带有选项框的树形菜单使用

    1.ztree简介 zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点.专门适合项目开发,尤其是 树状菜单.树状数据的Web ...

  4. 使用LESS对CSS进行预处理

    LESS 做为 CSS 的一种形式的扩展,它并没有阉割 CSS 的功能,而是在现有的 CSS 语法上,添加了很多额外的功能,所以学习 LESS 是一件轻而易举的事情. 变量 请注意 LESS 中的变量 ...

  5. 【Django】数据迁移问题

    最近发现,Django在修改models之后重新生成迁移文件(这里可以生成),再进行数据库迁移的时候老是出错,查询数据库时老是找不到表格或者字段. 尝试过重新新建项目,新建一个同名APP,然后mode ...

  6. 【VBA】ExcelファイルのOpen

    ※変数の定義を強制する方法: 一番上に.「Option Explicit」を追加して.変数の定義が必須となる. ソース Private Sub CommandButton2_Click() //スクリ ...

  7. zabbix钉钉报警

    我们在钉钉上建立群聊,然后在群聊上添加钉钉机器人: 编写,脚本需要放在zabbix 的alertscripts目录下(如果不知道该目录的位置,可以使用find命令查找) find / -iname a ...

  8. 小强学渲染之OpenGL状态机理解

    状态机是理论上的一种机器,呃这个说法非常非常的抽象.通俗一点理解,状态机描述了一个对象在其生命周期内所经历的各种状态,状态间的转变,发生转变的动因,条件及转变中所执行的活动.或者说,状态机是一种行为, ...

  9. mysql学习笔记--数据库单表查询

    一.查询语句 1.  select [选项] 列名 [from 表名]  [where 条件]  [order by 排序]  [group by 分组]  [having 条件]  [limit 限 ...

  10. android 个人使用总结

    android 中button控件去除阴影背景 style="?android:attr/borderlessButtonStyle" android  中输入账号和密码是做判断处 ...