Согласно внешнему ресурсу Переменные среды Windows , существует недокументированная встроенная переменная только для чтения =ExitCode
, которая возвращает текущий код выхода в шестнадцатеричном формате.Чтобы убедиться, что значение ErrorLevel
равно коду выхода, используйте cmd /C exit %ErrorLevel%
.
. Поэтому, если вы используете этот код строки ...:
cmd /C exit %ErrorLevel%
echo The error level is: %=ExitCode%
... вы получитеэто (предположим, что ErrorLevel
равно 15
):
The error level is: 0000000F
Чтобы избавиться от ведущих нулей, используйте это ...:
cmd /C exit %ErrorLevel%
for /F "tokens=* delims=0" %%Z in ("=ExitCode%") do set "HEXCODE=%%Z"
if not defined HEXCODE set "HEXCODE=0"
echo The error level is: %=ExitCode%
... чтобы получить это:
The error level is: F