Это только один способ проверить, определены ли все необходимые переменные. Вы можете использовать команду FOR
, чтобы просмотреть все имена переменных, и команду IF
, чтобы определить, определены ли они. Затем я установил два счетчика. Один для общего числа переменных и один для общего числа переменных, которые определены.
@echo off
REM Change these variables to test logic
set "var1=one"
set "var2=two"
set "var3=3"
set "allvars=var1 var2 var3"
set "vcnt=0"
set "defcnt=0"
FOR %%G IN (%allvars%) do (
set /a vcnt+=1
IF DEFINED %%G SET /a defcnt+=1
)
IF %vcnt% equ %defcnt% (
GOTO allvars
) else (
GOTO notdefined
)
:allvars
echo All variables defined
GOTO END
:notdefined
echo Some variables not defined
GOTO END
:END
pause