¿Por qué la barra invertida no produce un código de salida distinto de cero?

¿Por qué la barra invertida no produce un código de salida distinto de cero?

Si se ejecuta:

 true \ false; echo $?

Recibo un código de salida de 0. ¿Alguien sabe por qué?

Respuesta1

true \ false

es equivalente a

true ' false'

Hace que el shell se ejecute truecon false(incluido un carácter de espacio inicial) como parámetro. La implementación trueque está utilizando ignora este parámetro y sale con un valor de retorno cero.

Respuesta2

Simplemente estás ejecutando el comando truecon algunos argumentos. Dado que esos argumentos no son opciones, no importa cuáles sean.

información relacionada