Linux zgrep命令教程

grep是一个流行的命令,用于搜索和匹配给定内容或文件中指定的字符串。zgrep与grep非常相似,在grep中可以轻松地对压缩文件进行grep,而无需任何额外的命令来解压缩它们。在本教程中,我们将研究如何使用zgrep在压缩的单个或多个文件中轻松搜索,而无需显式提取它们。使用gzip命令可以轻松地搜索gz、tgz、gzip、7zip、zip压缩文件。

null

zgrep命令语法

zgrep命令具有以下语法。

zgrep OPTION TERM FILE
  • 期权 是单个或多个选项,用于启用zgrep命令的不同功能。通过使用选项区分大小写,可以启用多个搜索、计数等。此选项不是必需的。
  • 期限 搜索和匹配的术语或字符串。
  • 文件 是对给定的文件或内容进行搜索和匹配。文件是压缩文件,如gz、bzip、tgz等。

搜索并匹配指定的字符串

zgrep可以很容易地搜索压缩文件或仅提供搜索词的文件内容。在下面的示例中,我们在名为auth.log2.gz file的压缩文件中搜索术语“ismail”。

zgrep ismail auth.log.2.gz
图片[1]-Linux zgrep命令教程-yiteyi-C++库
搜索并匹配指定的字符串

或者,可以使用单个zgrep命令轻松搜索多个压缩文件。只需添加我们要搜索的文件名。

zgrep ismail auth.log.2.gz auth.log.3.gz auth.log.4.gz

搜索多个压缩文件的另一种方法是使用glob操作符,其中指定了文件名的某一部分,其他部分由glob操作符完成。下面的zgrep命令搜索以“auth.log”开头的文件名中的术语“ismail”。

zgrep ismail auth.log.*.gz

计数匹配行

zgrep命令可用于计算压缩文件中匹配的行数。c选项用于计算压缩文件中匹配的行数。只打印匹配行的计数,而不打印匹配行或术语。

zgrep -c ismail auth.log.2.gz

忽略区分大小写(不区分大小写搜索)

默认情况下,zgrep命令以区分大小写的模式进行搜索和匹配。这意味着大写字母只匹配内容中的大写字母,或者小写字母只匹配小写字母。这可以被禁用,给定的词可以搜索和匹配为不区分大小写。i选项用于使用zgrep命令启用不区分大小写的搜索。

zgrep -i ismail auth.log.2.gz

显示匹配的行号

压缩文件包含多行,匹配的行可以位于文件的不同位置。匹配的行号可以通过使用下面的-n选项来显示或打印。

zgrep -n ismail auth.log.2.gz
图片[2]-Linux zgrep命令教程-yiteyi-C++库
显示匹配的行号

反转搜索(显示不匹配的行)

默认情况下,zgrep命令显示匹配的行。但是,如果我们需要进行反向搜索或匹配,这意味着显示不匹配的行-v选项可以使用。

zgrep -v ismail auth.log.2.gz

搜索多个术语

zgrep的另一个强大功能是能够在一次运行中搜索多个术语。通过对每个搜索项使用-e选项,可以指定两个或多个搜索项。多个searhc项通过使用OR逻辑合并,其中匹配的单个项是确定的。

zgrep -e "ismail" -e "ahmet" auth.log.2.gz

仅显示匹配零件

默认情况下,zgrep命令打印包含指定术语的整行。但是如果我们只想显示匹配的部分,可以使用-o选项。

zgrep -o "ismail" auth.log.2.gz

仅显示匹配的文件名

默认情况下,zgrep命令打印匹配的文件名和完整的行作为结果。但是如果我们只需要列出匹配的行文件名,-l选项只能用于文件名而不是匹配的行。

zgrep -l "ismail" auth.log.*.gz

不显示文件名,只显示匹配的行

默认情况下,zgrep命令打印匹配的文件名和完整的行作为结果。但是,如果我们只需要打印匹配的行,而不显示文件名,-h选项可以像下面那样使用。

zgrep -h "ismail" auth.log.2.gz

相关文章: Linux arping命令教程

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享