我正在尝试仅检索zip文件夹中的文件名,其中这些文件包含特定字符串(文件中的字符串,而不是文件名的一部分)。我尝试了以下命令:
unzip -l results.zip | zipgrep -lir "Token" *
但它不会检索任何结果。它只是启动一个新的命令行。这是获取包含字符串Token
的文件名的正确方法吗?
答案 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}'