¿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