可以使用 EnableDelayedExpansion 开启延迟扩展模式,并将双重循环中的变量替换为使用 ! 进行延迟扩展的变量。 示例代码:
@echo off
setlocal EnableDelayedExpansion
for %%a in (1 2 3) do (
set "var=outer_%%a"
echo !var!
for /l %%b in (1,1,3) do (
set "var=inner_%%b"
echo !var!
REM 使用 ! 进行延迟扩展
set "var=!var!_!var!"
echo !var!
)
)