En sistemes operatius tipus Unix, /dev/null o perifèric nul (null device) és un fitxer especial que descarta tota la informació que s'escriu o redirigeix en ell. Al seu torn, no proporciona cap dada a qualsevol procés que intenti llegir d'aquest, tornant simplement un EOF o fi de fitxer.

Generalment s'usa en shell scripts per redirigir la sortida d'un flux de dades (stream) d'un procés o com un fitxer buit que actua com entrada d'un flux de dades d'un procés.

La forma més comuna utilitzada és mitjançant la redirecció, ja que /dev/null, com ja s'ha dit, és un fitxer especial i no un directori; per tant, no es poden moure (mv) ni copiar (cp) fitxers en el seu interior.

Exemples d'ús Primer exemple uname -r > /dev/null/

Anàlisi de l'ordre: 'uname': mostra informació del sistema. -r: Argument per l'ordre anterior, la qual li diu a l'ordre "uname" que mostri la versió completa del kernel del sistema. >: Aquest és una ordre de redirecció. Redirigeix el resultat de l'ordre "uname -r" a un arxiu; en aquest cas, a l'arxiu: /dev/null : Aquest arxiu rep la informació resultant, tanmateix, no l'emmagatzema com succeiria amb una arxiu normal. A continuació, la consola no reporta cap informació ni error.

Segon exemple En aquest exemple l'usuari desitja trobar el nom d'un fitxer dins de paquet RPM:

for i in *.rpm; do (rpm -qlp $i | grep $1 >/dev/null && echo $i); done

Anàlisi de l'ordre:

for i in *.rpm : efectua un bucle sobre tots els arxius del tipus .rpm. do (rpm -qlp $i | grep $1 >/dev/null && echo $i) ' ' : execució de la comanda. rpm -qlp $i | grep $1 : realitza una recerca dins de cada arxiu .rpm trobat i mostra el resultat (el nom del fitxer buscat). >/dev/null: PERÒ, com no desitja el resultat (en realitat és el nom del fitxer buscat que ja el coneixem). &&echo $i : el que volem és el nom de l'arxiu (paquet rpm) que el conté, ho mostrem utilitzant un echo. done'': finalitza el bucle.

Categoria:Unix