2012-12-15 45 views
0

我有数百个文件夹,每个文件夹都包含一个zip文件。我想提取每个zip文件到他们所在的位置。是否有一个简单的技巧或脚本来做到这一点?脚本将单独文件夹中的zip文件提取到自己的文件夹

编辑:

每个文件夹都在同一个父文件夹下。因此,层次结构如下所示:

PARENT FOLDER 
-SubFolder1 
--somefile.zip 
-Subfolder2 
--somefile.zip 
... 
-SubfolderN 
--somefile.zip 
+0

请更具体一些,例如了解您正在使用的操作系统很重要。 – schnaader

+1

我有权访问Linux和Windows机器,因此对其中的任何一个做出答案都没有问题。 – polerto

回答

1

unix下,你可以使用类似

find <dir> -iname '*.zip' -execdir unzip {} \;

程序发现穿越<dir>递归和每一个.zip文件发现它会改变到文件目录并对其执行解压缩。

1

Windows版本:

for /r "C:\Some\Directory" %f in (*.zip) do unzip "%f" -d "%~dpf" 

警告:没有经过充分测试。

参考文献:

我想用7-ZIP这将是

for /r "C:\Some\Directory" %f in (*.zip) do 7z x -o "%~dpf" "%f" 

但是这甚至untesteder。

+0

谢谢@melpomene,但unzip无法识别。这里是输出:“'unzip'不被识别为内部或外部命令,可操作程序或批处理文件。” – polerto

+0

是的,这个命令假定你已经安装了'unzip',当然。 (显然我用[texlive](http://www.tug.org/texlive/)获得了我的意思。有趣!) – melpomene

相关问题