GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué hace Echo $? ¿¿Hacer??

Esta pregunta ya tiene respuestas aquí :¿Cómo busco códigos de salida para aplicaciones?

(2 respuestas)
Cerrado hace 2 años.

En mi terminal, imprimió un número aparentemente aleatorio 127 . Creo que está imprimiendo el valor de alguna variable y para comprobar mi sospecha, definí una nueva variable v=4 . Ejecutando echo $? de nuevo me dio como salida.

Estoy confundido porque esperaba que 4 fuera la respuesta.

Respuesta aceptada:

De man bash :

ps Se expande al estado de salida de la canalización en primer plano ejecutada más recientemente.

echo $? devolverá el estado de salida del último comando. Obtuviste 127 ese es el estado de salida del último comando ejecutado con algún error (lo más probable). Los comandos al finalizar con éxito salen con un estado de salida de (más probablemente). El último comando dio salida desde el echo $v en la línea anterior terminó sin error.

Si ejecutas los comandos

v=4
echo $v
echo $?

Obtendrá resultados como:

4 (from echo $v)
0 (from echo $?)

Prueba también:

true
echo $?

Obtendrás .

false
echo $?

Obtendrás 1 .

El true el comando no hace nada, solo sale con un código de estado ; y el false El comando tampoco hace nada, solo sale con un código de estado que indica una falla (es decir, con el código de estado 1 ).


Linux
  1. ¿Qué significa "-" (doble guión)?

  2. Que hace ?

  3. ¿Qué hace Exec 3?

  4. Que hace . ~/.bashrc Comando Hacer??

  5. ¿Qué hace Bamfdaemon?

¿Qué devuelve malloc(0)?

Origen de un hilo de kworker

¿Qué hace ulimit -s ilimitado?

¿Qué hace 'bash -c'?

¿Qué hace % en las cadenas de shell de Linux?

¿Qué hace exactamente init?