如何解压位于多个子目录中的多个 zip 文件,这些文件都位于不同的目录中

如何解压位于多个子目录中的多个 zip 文件,这些文件都位于不同的目录中

我有一份 zip 文件列表,其中每个 zip 文件还包含一些其他 zip 文件,等等。我需要使用 ubuntu shell 命令提取所有文件,并仅将扩展名为 *.pdf 的文件放入新的空目录中。

这是我设法到达的地方,我已尝试 unzip -l "*.zip"

答案1

如何递归解压嵌套的 ZIP 文件? 以下是一行代码:

while [ "`find . -type f -name '*.zip' | wc -l`" -gt 0 ]; do find -type f -name "*.zip" -exec unzip -- '{}' \; -exec rm -- '{}' \;; done

这将删除所有已完成的 zip 文件,以避免无限循环。如果您想保留这些文件,请先备份。

相关内容