4

我尝试运行一个简单的批处理脚本,如下所示。基本上我想访问给定目录中的每个子目录并运行 gmake 命令。

echo %USER_DEF_VAR%
cd %USER_DEF_VAR%\topLevelDir
for /D %G in ("%USER_DEF_VAR%\topLevelDir\*") do ( 
cd %G
gmake clean
gmake 
)

如果我在命令行上运行这个脚本,它工作正常。但是当我把它放在一个 .bat 脚本中时,它会抛出一个错误说

do ( 在这个时候是出乎意料的。

我已尝试按照此处的建议尽可能删除空格-批处理文件中的嵌套 For 循环错误:此时 Do 出乎意料

我仍然面临同样的问题。

4

1 回答 1

7

在批处理脚本中,您必须加倍%

for /D %%G in ("%USER_DEF_VAR%\topLevelDir\*") do ( 
cd "%%~G"
...
)
于 2013-05-27T06:14:39.760 回答