2017-02-14 111 views
1

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

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

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

回答

1

你并不需要调用unzip如果你使用zipgrep。刚上一个zip文件中像这样使用zipgrep直接:

zipgrep -li "Token" results.zip 

注意,没有必要在这里使用-r(递归)选项。

0

zipgrep -l "Token" results.zip做的工作 它返回 results/filexxx.txt如果fielxxx.txt包含Token

如果你只是想获得的文件名没有文件夹results

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

我实际上需要文件中包含单词“Token”的文件,而不是文件名的一部分。 – Nasser

+0

@Nasser我误解了这个问题,看我的更新 – haifzhan

相关问题