请参阅下面的代码段。我想为新变量分配一个动态名称。我尝试了以下方法:
@echo off
setlocal enableDelayedExpansion
set my_dir_1=C:\temp1
set my_dir_2=C:\temp2
for %%d in (1 2) do (
echo my_dir_%%d: !my_dir_%%d!
set new_var=!my_dir_%%d!
echo === %new_var% ===
)
endlocal
第一个" echo"将输出我想要的东西:
my_dir_1: C:\temp1
=== ===
my_dir_2: C:\temp2
=== ===
但是你可以在第二个" echo"我的新变量" new_var"是空的。 我怎样才能解决这个问题?谢谢!
答案 0 :(得分:1)
替换此
echo === %new_var% ===
用这个:
echo === !new_var! ===