Nei sistemi operativi Unix e Unix-like, /dev/null (null device, dispositivo nullo) è un dispositivo virtuale (ossia non fisicamente presente su memoria di massa) con la caratteristica di scartare (non memorizzare) tutti i dati che gli vengono scritti. È sempre possibile effettuarvi scritture di quantità arbitrarie di dati, mentre in lettura non viene mai restituito alcun dato. In gergo è spesso chiamato buco nero o cestino per bit (da bit bucket).

Uso

modifica

L'utilizzo comune è quello di destinazione per dati o messaggi da ignorare prodotti su stream in uscita, e come file sempre vuoto è sempre disponibile per stream in ingresso.

Ad esempio, per ignorare il flusso di standard output prodotto da comando si può usare nella shell la sintassi

comando > /dev/null

che è in realtà la versione semplificata di:

comando 1> /dev/null

dove 1 indica appunto lo standard output.

Per reindirizzare anche il flusso di standard error si può usare:

comando 1> /dev/null 2> /dev/null

dove 2 indica lo standard error. Quest'ultimo comando equivale a:

comando &> /dev/null

Uso discorsivo

modifica

/dev/null è usato come metafora di luogo da cui nulla ritorna o esce in battute "umoristiche" come:

  • "per favore, mandate tutte le vostre lamentele a /dev/null" ("non provate a mandarci lamentele")
  • "i tuoi dati sono stati archiviati in /dev/null" ("i tuoi dati sono stati eliminati")
  • "reindirizzati a /dev/null" ("vai al diavolo", o "sparisci")

Una pubblicità famosa per il Titanium PowerBook G4 era: "Titanium PowerBook G4 manderà tutte le altre UNIX-box a /dev/null".

Equivalenti in altri sistemi operativi

modifica

Il dispositivo equivalente sui sistemi CP/M (e successivamente su DOS e Windows) è chiamato NUL (es. PAUSE>NUL). Sui sistemi Amiga il device era chiamato NIL:, mentre sui sistemi operativi Windows NT e successori esiste il device \Device\Null interno ed un link simbolico NUL.

Voci correlate

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica

📚 Artikel Terkait di Wikipedia

Demone (informatica)

da avviare; </dev/null indica di usare /dev/null come standard input; >/dev/null indica di indirizzare lo standard output a /dev/null; 2>&1 indica di

Null (disambigua)

NULL – valore speciale in programmazione /dev/null – dispositivo speciale Carattere null – carattere di controllo Null – EP di Foetus del 1995 Null –

Linguaggio di scripting

eseguire come root, naturalmente. #!/bin/bash cd /var/log cat /dev/null > messages cat /dev/null > wtmp echo "Log cancellati." exit 0 Con l'avvento delle interfacce

Crontab

/dev/null. Per evitare di ricevere la mail da cron, aggiungere il testo seguente a tutti i comandi. Questo redirigerà lo standard output su /dev/null e

Bash

standard error a /dev/null in modo da nascondere i suoi messaggi), e scrive a video il risultato: #!/bin/bash if cmp file_a file_b &>/dev/null; then echo "I

Dispositivo a caratteri

/dev/null o ancora /dev/zero. Udev Dispositivo a blocchi Mknod – Crea dispositivi a caratteri, dispositivi a blocchi e FIFO. /dev/null /dev/zero /dev/full

Nohup

proviene da un terminale, esso viene rediretto dal dispositivo a caratteri /dev/null. È da notare che nohup non attiva di per sé l'esecuzione in background

Grep

sempre con almeno due nomi di file da esaminare. Allo scopo torna comodo /dev/null, che è sempre presente e non contiene mai dati, ed è quindi l'ideale come