bash - zgrep - 列出匹配的文件名

标签 bash grep

当您定义选项“-l”时,grep 或 egrep 显示匹配文件的文件名。

但是,我有一个包含数千个文件的巨大文件 (tar.gz),我需要找出其中哪些包含模式。问题是:

zgrep -la testPattern HugeFile.tar.gz

只给我 tar.gz 文件的名称,而不是其中与模式匹配的文件。

这对我来说似乎是一个错误,但也许我误解了什么......有谁知道如何在不压缩或解压存档的情况下做到这一点?

最佳答案

zgrep'ing 一个 tar.gz 不会做你期望它做的事(它实际上是 grep 原始 tar 图像)。

但是,您可以采用其他问题中回答的替代方法:

Performing grep operation in tar files without extracting

关于bash - zgrep - 列出匹配的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8220905/

相关文章:

linux - 下面的 awk 有什么问题

bash - 在脚本中运行 curl 时出错(没有这样的文件或目录)

bash - 将目录中的所有文件从 $filename_h 重命名为 $filename_half?

regex - sed 版本提取

awk - 如何使用 grep 对列表进行排序以显示基于预定义列表的唯一出现次数?

regex - grep - 匹配文件中带有前导空格的路径

linux - 使用 sudo 命令时是否应该首先获取文件?

linux - "find: paths must precede expression:"如何指定在当前目录中也能找到文件的递归搜索?

linux - 从 bash 搜索 jar 或 tar

regex - 使用 grep 分割字符串的 shell 脚本