Por que a barra invertida não produz código de saída diferente de zero

Por que a barra invertida não produz código de saída diferente de zero

Se executado:

 true \ false; echo $?

Recebo um código de saída 0. Alguém sabe por que isso acontece?

Responder1

true \ false

é equivalente a

true ' false'

Isso faz com que o shell seja executado truecom false(incluindo um caractere de espaço inicial) como parâmetro. A implementação trueque você está usando ignora esse parâmetro e sai com um valor de retorno zero.

Responder2

Você está apenas executando o comando truecom alguns argumentos. Como esses argumentos não são opções, não importa quais sejam.

informação relacionada