Redirigir las salidas estandar a /dev/null

¿Qué es /dev/null?

Hay veces que necesitamos redirigir las salidas estándar de nuestro script a /dev/null, es decir que todo lo que devuelve la ejecución del script lo vuelque allí.

/dev/null es un device file que actúa como “agujero negro”, de modo que todo lo que redirijamos allí lo desechamos.

Valores de I/O Redirection

Estos son los valores que tienen definidas las entradas/salidas estándar:

Siempre tenemos los 3 siguientes valores:

stdin (0)
stdout (1)
stderr (2)

Uso

[ruta de mi script] >/dev/null 2>&1

  • 2 :  es la salida estándar error (STDERR).
  • > :  es la redireccion.
  • & :  es el símbolo para indicar que 1 es la salida estándar y no un fichero con nombre “1”.
  • 1 :  es la salida estandar out (STDOUT).

 

Ejemplos

En el primer ejemplo ejecutamos un script sin ponerle la redirección y nos devuelve 3 líneas por la salida estandar de error:

# ./kkscript

ksh: ls: cannot execute
ksh: chown: cannot execute
ksh: mkdir: cannot execute

En el segundo ejemplo añadimos la redirección a /dev/null para que deseche la salida estandar de error, de modo que no nos muestra nada:

# ./kkscript >/dev/null 2>&1

#

 

Fuente: http://www.tldp.org/LDP/abs/html/io-redirection.html

Compartir:

This article was written by RoberMB

💻OS, ☁️Cloud, 🛡️Cybersecurity, ✈️Traveling ... ................ Always learning. 🏴‍☠️🏴‍☠️🏴‍☠️ CEH v10, CPHE, ICPP+(In progress) 🏴‍☠️🏴‍☠️🏴‍☠️

Leave a Reply

Your email address will not be published. Required fields are marked *