For循环中的多个命令 - 批处理文件

时间:2014-08-11 11:14:08

标签: windows batch-file cmd

我有多个文件夹,其中每个文件夹都有一个zip文件,我有一个zip文件解压缩实用程序。这个实用程序是基于命令行的。我已经尝试过以下,我希望批处理提取所有文件夹中的文件。

for /f %%a in ('DIR g:\folder\ /b') do ( CD %%a g:\utility\7za e file_%%a.zip )

由于

2 个答案:

答案 0 :(得分:2)

您的问题不清楚,但这会进入g:\folder\目录中的每个文件夹 并在"file_apple.zip"目录中提取g:\folder\apple等。

您可能需要使用7za的x开关而不是e开关来保留文件夹结构。

@echo off
cd /d "g:\folder\"
for /f "delims=" %%a in ('DIR /ad /b') do (
   CD "%%a" 
   "g:\utility\7za" e "file_%%a.zip"
   cd ..
)

答案 1 :(得分:0)

换句话说,你有:

(实施例) 克:\文件夹\文件夹1

您想要更改到该目录,然后解压缩 file_folder1.zip ?

如果您只想提取以file_开头的所有zip文件, 只需将第二行更改为

g:\ utility \ 7za e file _ * .zip