Windows批处理文件迭代器问题

时间:2011-02-22 12:26:48

标签: windows-7 batch-file

我有3个项目,我使用svn。我的文件夹系统是:在项目文件夹中有一个文件夹projects,有3个项目projectAprojectBprojectC

我有一个像这样的Windows批处理脚本代码:

d:
cd projectA
svn update
cd ../projectB
svn update
cd ../projectC
svn update

使用一个.bat文件的目的我想更新我的所有项目。该代码似乎可以改进。有可能改变它:

set folder=projects
set directories=(projectA projectB projectC)
set command=svn update
d:
for %%i in %directories% do cd.. && cd %folder%/%%i && %command%

该代码在某处失败。应该更改while while循环或类似的东西,因为它试图在项目文件夹下创建cd projects\projectB(它应该在项目的上层文件夹中执行cd projects \ etc。)

编辑: @Andriy M我的电脑上有截图。红色是projectA,蓝色是projectB,紫色是projectC。

在这里: screenshot

1 个答案:

答案 0 :(得分:0)

是什么阻止你像这样实现它:

SET folder=D:\fullpath\project
SET directories=(projectA projectB projectC)
SET command=svn update
FOR %%i IN %directories% DO (CD /D %folder%\%%i && %command%)

相关问题