Windows: Получить Exit Code (ErrorLevel) — CMD & PowerShell

Каждая команда или приложение возвращает статус завершения, также известный, как return status или exit code.

Успешная команда или приложение возвращает 0, в то время как неуспешное возвращает ненулевое значение, которое обычно может быть интерпретировано как код ошибки (error code).

В Linux код завершения последней команды можно получить, выполнив echo $?.

В этой статье я покажу, как узнать код завершения последней консольной команды или приложения в Windows из командной строки (CMD) или из PowerShell.<кода>

Код Возврата Последней Команды

Напечатать True или False, в зависимости от того, выполнилась ли последняя команда или консольное приложение успешно либо с ошибкой:

# Windows CMD
C:\> if %ErrorLevel% equ 0 (echo True) else (echo False)

# Windows PowerShell
PS C:\> $?

Вернуть код завершения последней команды или консольной программы:

# Windows CMD
C:\> echo %ErrorLevel%

# Windows PowerShell
PS C:\> $LastExitCode

Код Возврата Оконного Приложения

Напечатать True или False, в зависимости от того, выполнилась ли последняя «оконная» программа, запущенная из консоли, успешно либо с ошибкой:

# Windows CMD
C:\> start /wait app.exe
C:\> if %ErrorLevel% equ 0 (echo True) else (echo False)

# Windows PowerShell
PS C:\> app.exe
PS C:\> $?

Вернуть код завершения «оконного» приложения, запущенного из консоли:

# Windows CMD
C:\> start /wait app.exe
C:\> echo %ErrorLevel%

# Windows PowerShell
PS C:\> app.exe
PS C:\> $LastExitCode