如何在zgrep上使用正则表达式?

时间:2016-02-18 08:15:24

标签: linux unix find archive

我需要在压缩文件中找到一些值,例如.tar.zip。 我发现这个命令对我来说很有用:

find . | xargs zgrep --color=always "blabla"

除了“blabla”之外,我还需要找到一些在其之后或之前的其他字符串。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

我添加了一些参数来查找,所以你只会grep这些文件。

find . -name "*.gz" -type f | xargs zgrep -B1 -A1 --color=always "blabla"

答案 1 :(得分:0)

zgrep正在使用grep,您可以使用-a中的grep选项:

来自man页面:

  

-a, - text

     

处理二进制文件,就好像它是文本一样;这相当于--binary-files = text选项。

如果您想在同一行'上找到某些内容,请使用以下通配符:

find . | xargs zgrep -a --color=always "before_bla.*blabla.*after_bla"

直接回答您的问题man grep

请小心点入zip文件。