如何找到一长排嵌套 Zip 文件中的最后一个 Zip 文件

如何找到一长排嵌套 Zip 文件中的最后一个 Zip 文件

我有一个任务,要找到一长排嵌套 Zip 档案中的最后一个文件。它们如下:

3301.zip
       |
       3300.zip
              |
              3299.zip
                     |
                      ...
                         |
                         1.zip

基本上,我必须从另一个档案中提取一个档案 3300 次才能到达其中的文件1.zip

我搜索过各种方法,但可能我的搜索词不正确,或者我遗漏了某些内容。我尝试过“到达最后一个文件嵌套 zip”、“提取嵌套 zip”。我的工作环境是 Linux,我尝试过几个终端命令。但都没有达到我想要的效果。

答案1

您可以使用以下命令递归地提取所有 zip 文件(直到到达最后一个文件)while

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

它会反复运行,在此目录中查找 zip 文件,如果找到则提取 zip 文件,同时删除父 zip 文件。它会反复执行此操作,直到对最后一个 zip 文件 (1.zip) 执行此操作并且找不到其他 zip 文件为止。

相关内容