如何批量检查是否存在多个 VAR(从 VAR1 到 VAR10)

Howto check if several VAR exists (From VAR1 to VAR10 ) in Batch

如果 VAR1 到 VAR10 不等于“”,我正在尝试签入 .bat。如果是这样,我想回应 var 的内容。就像下面这个不工作的例子

FOR /L %%G IN (1,1,10) DO (
        IF "%SYSTEM%%%G" NEQ "" (
                echo %SYSTEM%%%G%
                ) 
        )

我已经试了几个小时了,也许有人可以给我提示。

最好使用if defined和延迟扩展来获取值:

@echo off

set system1=1
set system5=9
set system10=5

setlocal enableDelayedExpansion
for /l %%# in (1,1,10) do (
    if defined system%%# (
        echo system%%# dedfined : !system%%#!
    )
)

你应该使用EnableDelayedExpansion and verify if variables are Defined

@echo off
set Var1=
set Var2=
set Var3=3
set Var4=4
set Var5=5
set Var6=
set Var7=
set Var8=8
set Var9=9
set Var10=10
setlocal enableDelayedExpansion
FOR /L %%G IN (1,1,10) DO (
        if defined Var%%G (
            echo  Var%%G=!Var%%G!
            ) 
        )
endlocal
pause