2013-11-22 206 views
0

我想傳遞一個變量裏面一個for循環的批處理文件:Windows批處理文件中的變量

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 
.... 
) 

蝙蝠,我不知道如何在for循環的變量TEST_1 TEST_2內傳遞順序有以下結果:

Building MYtestA 
Building MYtestB 

感謝馬里亞諾

回答

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! 

) 
+0

好了,現在可以使用了,謝謝! – Mariano