包含zip文件夹中的字符串的grep文件名

时间:2017-02-14 17:14:05

标签: linux shell grep

我正在尝试仅检索zip文件夹中的文件名,其中这些文件包含特定字符串(文件中的字符串,而不是文件名的一部分)。我尝试了以下命令:

unzip -l results.zip | zipgrep -lir "Token" *

但它不会检索任何结果。它只是启动一个新的命令行。这是获取包含字符串Token的文件名的正确方法吗?

2 个答案:

答案 0 :(得分:1)

如果您使用unzip,则无需致电zipgrep。只需在zipgrep文件上直接使用zip,就像这样:

zipgrep -li "Token" results.zip

请注意,此处无需使用-r(递归)选项。

答案 1 :(得分:0)

zipgrep -l "Token" results.zip完成工作 它回来了 如果fielxxx.txt包含results/filexxx.txt

,则Token

如果您只想获取没有文件夹results的文件名:

 zipgrep  "Token" results.zip  | awk -F: '{print $1}' | awk -F'/' '{print $2}'