En PowerShell, ¿cuál es la diferencia entre $?
y $LastExitCode
?
leí about automatic variables, y dijo:
$? 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.
En la definición de $?
no explica por qué tener éxito y fallar media.
Lo pregunto porque supuse que $?
es verdadera si y sólo si $ LastExitCode es 0, pero me pareció una sorprendente contraejemplo: $LastExitCode=0 but $?=False in PowerShell. Redirecting stderr to stdout gives NativeCommandError.
Gracias Joey. Yo mismo pensé $? significaba un código de salida distinto de cero, pero acabo de encontrar un contraejemplo sorprendente. Ver http://stackoverflow.com/questions/10666101/powershell-lastexitcode-0-but-false-redirecting-stderr-to-stdout-gives-nat –
Eso es interesante. Creo que esto es un error (porque se comporta de manera incoherente entre diferentes hosts de PowerShell). – Joey
Y diferentes cmdlets: @iex abcde @ por ejemplo, no devuelve $? = False o $ LastExitCode> 0 – majkinetor