如何递归提取多个zipped和rar文件?
我有一个文件夹ExampleFolder
,其中包含许多压缩文件夹。 这些压缩文件夹还包含多个压缩文件夹。 如何通过ExampleFolder
递归提取其所有压缩文件夹?
注意, ExampleFolder
本身没有压缩,它只是一个普通的文件夹
好吧,现在我知道Rinzwind发生了什么,nux答案都是正确的(除了我必须永远按Y或A)
但似乎有些压缩文件,包含压缩文件和rar文件,rar文件也不会被提取出来
while [ "`find . -type f -name '*.zip' | wc -l`" -gt 0 ]; do find -type f -name "*.zip" -exec unzip -- '{}' \; -exec rm -- '{}' \;; done
管他呢
编辑2有些文件名为.r00
和r01
,. r02
到r14,它们是rar
文件,但不是.rar
您可以使用此命令,它将以递归方式解压缩当前目录中的所有文件。
注意这将删除原始压缩文件,但如果要保留原始文件,请删除-exec rm -- '{}' \;
代码。
命令:
while [ "`find . -type f -name '*.zip' | wc -l`" -gt 0 ]; do find -type f -name "*.zip" -exec unzip -- '{}' \; -exec rm -- '{}' \;; done
我能想象到的最简单的方法是提取拉链,然后提取内部的内容。
ExampleFolder
说,在ExampleFolder
你有Example-A.zip
。 只需从Example-A.zip
提取.zip
(可能是一个名为Example-A-Folder
),然后逐个提取每个.zip
。 如果递归地压缩它(在Windows上,像Example.zip.zip.zip
那样会出现)会导致另一个内部的压缩文件夹,等等,这可能会很麻烦。