7zip命令行 - 递归解压缩所有压缩文件

时间:2014-04-22 16:17:32

标签: recursion command-line extract 7zip

我的桌面计算机上有7zip,位于:c:\ program files \ 7-zip \ 7z.exe。我还有2个具有相似结构的映射驱动器,驱动器X和驱动器Y.下面是源的示例。

Drive X
X:\Sourcefolder\Folder1\file1.zip
X:\Sourcefolder\Folder1\file2.zip
X:\Sourcefolder\Folder2\file3.zip
X:\Sourcefolder\Folder3\file4.zip

目标文件夹结构如下:

Drive Y
Y:\DestFolder\Thing1\Folder1\[file1.zip contents and subfolders]
Y:\DestFolder\Thing1\Folder1\[file2.zip contents and subfolders]
Y:\DestFolder\Thing1\Folder2\[file3.zip contents and subfolders]
Y:\DestFolder\Thing1\Folder3\[file4.zip contents and subfolders]

已经创建了驱动器Y(DestFolder \ Thing1 \ Folder1,2& 3)上的文件夹。其中一些可能已经有其他文件&其中的子文件夹。

我可以运行以下命令行并解压缩内容:

for /R %i IN (*.zip) DO "c:\program files\7-zip\7z.exe" x "%i" -o"Y:\DestFolder\Thing1\Folder1"

然而,在我的映射驱动器上发生的情况是,我看到 NEW 结构,这正是我在命令行的第二组引号中所拥有的,即使这些文件夹已经存在存在。到目前为止,我只在空文件夹上测试它,因为我担心它可能会破坏任何现有文件。我可以在它们之间导航,并且可以切割&将文件粘贴到正确的文件夹中。

为什么7zip“创建”重复文件夹结构以将文件解压缩到?我知道-o开关允许您指定目标目录,但它没有在帮助文件中说明它创建它或者如果它已经存在会发生什么。

我应该使用其他命令行参数将这些zip文件解压缩到正确的文件夹中吗?谢谢!

0 个答案:

没有答案