如何循环 Windows 批处理文件中的环境变量?

Ale*_*lex 2 windows batch-file

在 Windows 中,我想遍历一组环境变量,如以下伪代码:

set MYVAR1=test
set MYVAR2=4711
set MYVAR3="a b c"

for /l %%x in (1, 1, 3) do (
   echo %MYVAR%s%%
)
Run Code Online (Sandbox Code Playgroud)

我期望以下输出

test
4711
a b c 
Run Code Online (Sandbox Code Playgroud)

如何更改此示例代码以使其正常工作?

npo*_*aka 5

@echo off
set MYVAR1=test
set MYVAR2=4711
set MYVAR3="a b c"

setlocal enableDelayedExpansion
for /l %%x in (1, 1, 3) do (
   echo !MYVAR%%x!
)
endlocal
Run Code Online (Sandbox Code Playgroud)