/dev/null
De Wikipedia, la enciclopedia libre
En sistemas operativos tipo Unix, /dev/null o null device (periférico nulo) es un fichero especial que descarta toda la información que se escribe o redirecciona en él. A su vez, no proporciona ningún dato a cualquier proceso que intente leer de él, devolviendo simplemente un EOF o fin de fichero.
Generalmente se usa en shell scripts para redirigir la salida de un flujo de datos (stream) de un proceso o como un fichero vacío que actúa como entrada de un flujo de datos de un proceso.
La forma más comunmente utilizada es mediante la redirección, ya que /dev/null, como ya se ha dicho, es un fichero especial y no un directorio; por lo tanto, no se pueden mover (mv) ni copiar (cp) ficheros en su interior.
[editar] Ejemplos de uso
[editar] Primer ejemplo
uname -r > /dev/null/
Análisis del comando:
- uname: muestra información del sistema.
- -r: Argumento para el comando anterior, el cual le dice al comando uname que muestre la versión completa del kernel del sistema.
- >: Este es un comando de redirección. Redirecciona el resultado del comando "uname -r" a un archivo; en este caso, al archivo:
- /dev/null: Este archivo recibe la información resultante, sin embargo, no la almacena como sucedería con una archivo normal. A continuación, la consola no reporta ninguna información ni error.
[editar] Segundo ejemplo
En este ejemplo el usuario desea encontrar el nombre de un fichero dentro de paquete RPM:
for i in *.rpm ; do (rpm -qlp $i | grep $1 >/dev/null && echo $i) ; done
Análisis del comando:
- for i in *.rpm : efectua un bucle sobre todos los archivos del tipo .rpm .
- do (rpm -qlp $i | grep $1 >/dev/null && echo $i) : ejecución del comando.
- rpm -qlp $i | grep $1 : realiza una búsqueda dentro de cada archivo .rpm encontrado y muestra el resultado (el nombre del fichero buscado).
- >/dev/null : PERO, como no desea el resultado (en realidad es el nombre del fichero buscado que ya lo conocemos).
- &&echo $i : lo que queremos es el nombre del archivo (paquete rpm) que lo contiene, lo mostramos utilizando un echo.
- done: termina el bucle.

