我想在批处理文件中的for循环中传递一个变量:
echo TEST results >MYTest.log
set TEST_1=MYtestA
set TEST_2=MYtestB
FOR /L %%A IN (1,1,2) DO (
ECHO %%A
echo Building ???%TEST%_%%A
....
)
Bat我不知道如何在for循环中传递变量TEST_1 TEST_2以获得以下结果:
Building MYtestA
Building MYtestB
谢谢马里亚诺
答案 0 :(得分:2)
您需要延迟扩展变量。然后,使用您的for
变量来组成要检索的变量的名称,并使用具有该名称的延迟扩展来获取变量的内容。
setlocal enableextensions enabledelayedexpansion
set TEST_1=MYtest1
set TEST_2=MYtest2
FOR /L %%A IN (1,1,2) DO (
ECHO %%A
echo Building !TEST_%%A!
)