Eliminar la salida estándar y la salida de errores de un comando

En ocasiones nos interesa ejecutar un comando y evaluar tan sólo el resultado de ejecutarlo, ignorando tanto la salida estándar como la salida de errores. En este post vamos a explicar cómo hacerlo:

La entrada y las salidas estándar y de errores son las siguientes:

  • stdin (entrada estándar): Descriptor 0 
  • stdout (salida estándar): Descriptor 1 
  • stderr (salida de errores): Descriptor 2 

Para eliminar las dos salidas lo que debemos hacer es:

  • Primero enviar a /dev/null stdout
  • y luego enviar stderr a dónde vaya stdout.

Ésto quedaría así:

>/dev/null 2>&1

Un ejemplo:

id $usuario > /dev/null 2>&1

El comando anterior no mostraría nada por pantalla y podríamos comprobar el resultado de su ejecución con tan sólo consultar a continuación la salida del último comando: $?

Be the first to comment

Por favor acceder para comentar.