В PowerShell, в чем разница между $?
и $LastExitCode
?
Я прочитал об автоматических переменных, и он сказал:
$? Contains the execution status of the last operation. It contains TRUE if the last operation succeeded and FALSE if it failed.
$LastExitCode Contains the exit code of the last Windows-based program that was run.
В определении $?
он не объясняет, что означает преуспевание и сбой.
Я спрашиваю, потому что предположил, что $?
является True тогда и только тогда, когда $LastExitCode равен 0, но я нашел неожиданный встречный пример: $LastExitCode = 0, но $? = Неверно в PowerShell. Перенаправление stderr в stdout дает NativeCommandError.