Введите help if
в командной строке, чтобы получить некоторую информацию об обработке уровня ошибки.
Проблема с вашим кодом состоит в том, что выражение IF ERRORLEVEL N
оценивается как истинное для любого числа, равного или превышающего N
Обычно только ERRORLEVEL 0 указывает на успех, любое другое (большее) значение является признаком некоторой ошибки. Чтобы просто проверить, не произошла ли ошибка, отмените проверку на:
IF NOT ERRORLEVEL 1 (
REM your code here
)
или в качестве альтернативы закройте скрипт:
IF ERRORLEVEL 1 EXIT /B