Надежный способ проверки ненулевого (ошибочного) кода возврата в пакетном файле Windows

Введение

Существует множество советов по работе с кодами возврата в пакетных файлах (с использованием механизма ERROLEVEL), например.

Некоторые советы — делать , если уровень ошибки 1 становится чем-то плохим, в то время как другие рекомендуют использовать %ERRORLEVEL%переменная и использование ==, EQU, LSSи т. д. Похоже, что есть проблемы в IFзаявления и тому подобное, поэтому отложенное расширение поощряется, но, похоже, оно имеет свои собственные причуды.

Вопрос

Что такое надежный (то есть надежный, поэтому он будет работать практически на любой системе практически с любым кодом возврата) способ узнать, был ли возвращен неверный (ненулевой) код?

Моя попытка

Для базового использования следующее, кажется, работает нормально, чтобы перехватить любой ненулевой код возврата:

if not errorlevel 0 (
    echo error level was nonzero
)
18
задан Community 23 May 2017 в 12:30
поделиться