我有一个很大的zip
文件目录,每个文件都包含一个文件。我想自动将所有 zip 文件解压到一个目录中。
7-zip 具有将多个 zip 文件解压到同一目录中的功能。但是,它会为每个原始 zip 文件创建一个子目录。以下是解压前后的效果:
前:
- before
- a.zip
- a.txt
- b.zip
- b.txt
- c.zip
- c.txt
- d.zip
- d.txt
后:
- after
- a
- a.txt
- b
- b.txt
- c
- c.txt
- d
- d.txt
但是,我想要的输出是这样的:
- after
- a.txt
- b.txt
- c.txt
- d.txt
我怎样才能做到这一点?
答案1
您可以在命令行中使用“e”开关执行此操作。
7za e archive.zip -o\\path\to\target
-o 开关是可选的,可让您指定解压的目标目录。请勿在 -o 和路径之间添加空格。如果不指定,则将使用当前目录。
请注意,您的档案中没有不同文件夹中同名的文件。
答案2
如果您在资源管理器中选择所有 zip 文件并单击鼠标右键,您应该会在菜单Extract Here
下找到一个选项7-Zip
。这应该可以满足您的要求。
答案3
您可以尝试使用批处理文件来完成此任务。例如:
::Path where zip files are stored
SET SOURCEPATH=C:\zips\before
::Target Path where extracted files will be stored
SET TARGETPATH=C:\zips\after
::path to 7-zip
SET Z=C:\Program Files\7-Zip\7z.exe
::Extract each file in source folder into target
FOR %%f in (%SOURCEPATH%\*.zip) do "%Z%" e %%f -o%TARGETPATH%
此批处理文件将把“Before”文件夹中所有以“zip”为扩展名的文件解压到“After”文件夹中。您必须修改源、目标和 7zip 路径。