grep详解

Dec 13, 2016 pm 03:08 PM
grep

OK,学完了正则表达式,sed,awk,文本三剑客就剩下grep了。一块拿下吧

先看看什么是grep吧

百度了一下

英文:global search regular expression(RE) and print out the line

汉语:全面搜索正则表达式并把行打印出来

grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

grep家族包括,grep,egrep和fgrep

原理

说说grep的原理吧?

在给出文件列表或标准输入后,grep会对匹配的一个或多个表达式的文本进行搜索,并只输出匹配

(或者不匹配)的行或文本

其实,说白了,grep的过程和sed的寻址过程差不了多。

参照sed处理过程,我们总结下grep的处理过程

将一行文本读取模式空间

根据指定的正则,搜索该行文本,看是否有匹配的内容

如果,整行一次匹配都没有,该行不做后续的处理了,删除该行并读入下一行

如果匹配成功,则打印该行,并读入下一行。

这么看起来,grep其实就是一个简化版的sed,对于的匹配成功的行自动的打印出来,而sed中需要指定p命令来打印,否则整个文本都会被打印。 当然grep的option提供了很多的参数,也有着很多sed没有的功能。

OK,既然这样了,那grep就剩下两块内容了,一个是grep的参数,一个是正则寻址

说到正则,grep中使用正则和sed,awk有点区别,sed或awk中要用//圈起来。而grep中则不需要


语法格式

grep [option] pattern [file...]

grep [options] [-e pattern] -f []

grep -E 相当于egrep,grep -F相当于fgrep,grep -r 相当于rgrep

下面来看看grep的[options]吧

介绍[options]的过程中会弄点小例子,练习下元字符的及grep,egrep,fgrep的使用。

楼主把自己认为可能会被经常用到的参数用颜色,mark一样

grep -V   这个可以看grep的版本

测试文本

John Daggett, 341 King Road, Plymouth MA
Alice Ford, 22 East Broadway, Richmond VA
Orville Thomas, 11345 Oak Bridge Road, Tulsa OK
Terry Kalkas, 402 Lans Road, Beaver Falls PA
Eric Adams, 20 Post Road, Sudbury MA
Hubert Sims, 328A Brook Road, Roanoke VA
Amy Wilde, 334 Bayshore Pkwy, Mountain View CA
Sal Carpenter, 73 6th Street, Boston MA
ansible is ansible
saltstcak is more powerful than (ansible),hehe
ansibl are ansible

匹配器的选择

匹配器的选择

匹配控制

匹配控制

输出控制

输出控制

输出行前缀控制

输出行前缀控制

内容控制

内容控制

文件及目录选项

文件及目录选项

其它选项

其它选项

退出状态

匹配成功,退出状态码为0,匹配失败退出状态码为1,匹配出现错误退出码为2


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何在Linux中使用grep命令进行日志分析? 如何在Linux中使用grep命令进行日志分析? Jul 29, 2023 pm 02:12 PM

如何在Linux中使用grep命令进行日志分析?引言:日志是系统运行过程中产生的重要记录,对于系统运维和故障排查来说,日志分析是一项必不可少的工作。在Linux操作系统中,grep命令是一种强大的文本搜索工具,非常适合用于日志分析。本文将介绍针对日志分析常用的grep命令的使用方法,并提供具体的代码示例。一、grep命令简介grep是Linux系统中的一款文

介绍Linux下使用grep命令显示上下文信息的方法 介绍Linux下使用grep命令显示上下文信息的方法 Jan 04, 2024 pm 04:41 PM

本文研究的主要是Linux下grep显示前后几行信息的相关内容,具体如下。标准unix/linux下的grep通过下面参数控制上下文grep-C5foofile显示file文件里匹配foo字串那行以及上下5行grep-B5foofile显示foo及前5行grep-A5foofile显示foo及后5行查看grep版本号的方法是grep-V假设想升级,升级的方法:最新的源代码(google或者百度搜索主页),编译安装到某个地方,比方/home/aaa/bin/那么以后用的时候就用/home/aaa/

使用grep命令查询特定首尾文件内容的方法 使用grep命令查询特定首尾文件内容的方法 Jan 09, 2024 am 09:45 AM

LINUX系统中想要查看文件的内容,该怎么查看指定文件的首尾内容呢?下面我们就来看看使用grep查询指定首尾文件内容的教程。1、打开LINUX,这里我们可以用UBUNTU操作系统。2、找到左边任务栏的TERMINAL,打开终端窗口。3、grep后面加上^,就可以指定某一行的行首。4、grep后面的内容后面加上$,就可以指定某一行的行尾。5、^$可以同时使用,指定某一行首尾必须的内容。6、如果中间有一个字符缺失或者不正确,那么都会查询不到。7、配合-i使用就可以无视大小写的规则。8、还可以配合-v

Linux grep命令的语法是什么 Linux grep命令的语法是什么 May 14, 2023 pm 10:43 PM

Linuxgrep命令用于查找文件里符合条件的字符串。grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则grep指令会从标准输入设备读取数据。语法:grep参数:-a或--text:不要忽略二进制的数据。-A或--after-context=:除了显示符合范本样式的那一列之外,并显示该行之后的内容。-b或--byte-offset:在显示符合样式的那一行之前

Linux系统中grep如何使用? Linux系统中grep如何使用? Feb 19, 2024 pm 03:54 PM

  在Linux中,grep是一个非常常见和重要的工具,是每一个专业运维工程师必须掌握的命令,因为通过它可以快速地查找和过滤文件中的内容,那么Linux系统中grep如何使用?下面是常见用法介绍,一起来看看吧。  1、基本用法grep命令主要用于在文件中搜索指定模式的行。例如,要在文件file.txt中查找包含"example"的行,可以使用grep命令来实现。  grep‘example’file.txt  grep将输出所有包含’example’的行。 

Linux grep命令有什么作用 Linux grep命令有什么作用 May 29, 2023 am 08:43 AM

Linuxgrep命令用于查找文件里符合条件的字符串。grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则grep指令会从标准输入设备读取数据。语法:grep参数:-a或--text:不要忽略二进制的数据。-A或--after-context=:除了显示符合范本样式的那一列之外,并显示该行之后的内容。-b或--byte-offset:在显示符合样式的那一行之前

grep的正则用法 grep的正则用法 Nov 16, 2023 am 10:29 AM

grep的正则用法有:1、简单的匹配;2、基本正则表达式;3、元字符的使用;4、锚定字符的使用;5、字符类的使用;6、量词的使用。详细介绍:1、简单的匹配,使用grep命令后跟随要匹配的字符串;2、基本正则表达式,使用-E选项启用扩展的正则表达式功能;3、元字符的使用,在正则表达式中,可以使用一些元字符来表示特定的字符或字符集合;4、锚定字符的使用等等。

linux中grep的用法有哪些 linux中grep的用法有哪些 Sep 05, 2023 am 11:01 AM

linux中grep的用法有基本用法、忽略大小写、正则表达式搜索、反向搜索、统计匹配行数、递归搜索、输出行号和从输入流中搜索等。详细介绍:1、基本用法,grep命令的基本用法是在文件中查找包含指定模式的行,在文件file.txt中查找包含"example"的行,可以执行该命令“grep "example" file.txt”;2、忽略大小写,默认情况下,grep区分大小写等等。

See all articles