【问题标题】:Piping GUNZIP to GREP将 GUNZIP 连接到 GREP
【发布时间】:2019-11-14 08:22:54
【问题描述】:

我正在尝试在特定文件夹中查找所有 ZIP 文件,使用 GUNZIP 提取它们,并将输出通过管道传输到 GREP 以在这些 ZIP 文件中包含的 HTML 文件中进行搜索。

我设法通过 UNZIP (unzip -p) 做到了这一点,但不幸的是,由于我最终将使用 SSH 循环运行搜索的许多服务器,没有安装 ZIP/UNZIP,我仅限于 GUNZIP它安装在这些旧的 Linux 内核服务器上,我猜默认情况下。

有没有办法将 gunzip 提取的输出(find -exec 命令后的多个文件)传输到 grep,以允许在这些 HTML 文件中搜索(不是在它们的文件名中,而是在)?

到目前为止,我就是这样尝试的,但没有成功:

find /home/osboxes/project/ZIPs/*.zip -exec gunzip -l {} \;|grep 'pattern'

UNZIP 有一个 -p 选项,可以管道输出,我用它得到所需的结果,但似乎 GUNZIP 没有......

你能想出一种方法来帮助我实现它吗?

赞赏

【问题讨论】:

  • @Tds18 :你使用了 gunzip 的-l 选项,它不会输出文件的内容。见man gunzip
  • zgrep 是你的朋友。
  • 虽然您为什么要尝试将 gzip 与 zip 文件一起使用?我无法想象它运作良好。
  • 谢谢@Labradorcode,也对。

标签: linux shell grep pipe gunzip


【解决方案1】:

gunzip -c 将输出写入标准输出。原始文件不受影响。 zcat 也可以,和gunzip -c 一样。

【讨论】:

  • 还有zgrep
  • 谢谢你的朋友 :) 有所作为。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-28
  • 2015-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多