Я хотел бы проверить, не сработал ли мой оператор set / a с ошибкой Missing operator.
или нет. Мой текущий командный файл, только устанавливает переменную. Этот пакетный файл предназначался для проверки моей теории проверки, не сработал ли мой оператор set / a с ошибкой Missing operator.
.
@echo off & @setlocal
set "rndtest=%random% %%2+1"
if "%rndtest%" == "1" set test=1()1
) else (
set test=1+1+1+1+1
)
set "test=1+1+1+1+1+1+1+1+1"
set /a "test_123_abc=%test%"
echo %test_123_abc%
Я пробовал следующее решение, но безрезультатно:
@echo off & @setlocal
set "rndtest=%random% %%2+1"
if "%rndtest%" == "1" set test=1()1
) else (
set test=1+1+1+1+1
)
set /a "test_123_abc=%test%" | find "Missing operator."
if %errorlevel% equ 0 echo Test failed!
) else (
echo Test didn't fail!
)
exit /b 0
Это всегда оценивается как Test didn't fail.
Предполагалось, что оно будет оцениваться как одно из двух, но оно всегда оценивается как Test didn't fail.