GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist /dev/null unter Linux

Die Datei „/dev '-Verzeichnis in Linux- und Unix-basierten Systemen enthält Dateien, die den an das System angeschlossenen Geräten entsprechen. Wie im Screenshot unten zu sehen ist, wird beispielsweise mit „cdrom“ auf das CD-Laufwerk zugegriffen ‘, DVD-Laufwerk mit ‘dvd ‘ erfolgt der Zugriff auf Festplatten mit ‘sda1 ‘, ‘sda2 ‘ usw.

Empfohlene Lektüre :Was ist ‚> /dev/null 2>&1‘ unter Linux

Alle diese Dateien kommunizieren mit dem Linux-System über die entsprechenden Dateien in „/dev ‘. Über diese Dateien erfolgt die Ein-/Ausgabeverarbeitung der Geräte. Das liegt an einer wichtigen Eigenschaft des Dateisystems in Linux:Alles ist entweder eine Datei oder ein Verzeichnis.

$ cd /dev

Abgesehen von diesen Dateien, die tatsächliche physische Geräte darstellen, gibt es einige Dateien in „/dev “, die als „virtuelle Gerätedateien bekannt sind ‘ oder ‚Pseudo-Gerätedateien ‘. Diese Dateien verwalten keine Geräte und werden verwendet, um verschiedene Funktionen bereitzustellen, die vom Betriebssystem benötigt werden.

Beispiel:Die Datei „/dev/random ' Gibt beim Lesen einen Satz zufälliger Bytes zurück, die vom Zufallszahlengenerator generiert wurden.

Eine solche Datei, die sehr häufig verwendet wird, ist „/dev/null ‘. Heute werden wir versuchen, etwas über diese Datei zu erfahren und zu welchem ​​Zweck sie in Linux vorhanden ist.

/dev/null:Was ist das und warum ist es da?

Sie wissen vielleicht, dass unter Linux hauptsächlich die Befehlszeile verwendet wird, um nicht nur administrative Prozesse oder Serververwaltungsprozesse, sondern auch alltägliche Prozesse auszuführen. Die Befehlszeile (auch Terminal genannt ) führt ein Programm aus und gibt die Ausgabe aus (auch bekannt als Protokoll ).

Das Terminal gibt zwei Arten von Ausgaben aus:

  1. STDOUT , oder „Standardausgabe ’ ist die Ausgabe mit allgemeinen Informationen zum Programmlauf und Erfolgsmeldungen des Programmlaufs.
  2. STDERR , oder „Standardfehler ‘ ist die Ausgabe mit Fehlermeldungen des Programmlaufs.

Je größer der Prozess, desto größer ist das von dem Prozess erzeugte Protokoll. Oft ist der größte Teil des Protokolls ist für den Benutzer nicht einmal relevant. Dies verbraucht sogar unnötige Ressourcen der Maschine.

Verwandte Lektüre :So filtern Sie Protokolldateieinträge basierend auf dem Datumsbereich

In solchen Fällen ist „/dev/null ‘ ist praktisch. Diese Datei wird als ‚Senke verwendet ‘, also eine Zieldatei zum Schreiben des Logs. Außer dass das Protokoll, sobald es in diese Datei geschrieben wird, sofort vom Betriebssystem verworfen/gelöscht wird.

$ ls /dev

Oben gelb hervorgehoben ist die Datei „null ‘ im Verzeichnis ‘dev ‘ Dateisystem.

Dadurch, dass die Daten sofort verworfen werden, wird unnötiger Speicherverbrauch verhindert. Dies ist besonders nützlich bei komplexen Automatisierungsskripten, die die Ausgabe von 10s enthalten und 20s von Programmen.

Um die Ausgabe eines beliebigen Programms nach /dev/null zu leiten verwenden Sie einfach den Umleitungsoperator in der Linux-Shell (‘>’) wie folgt.

$ ls > /dev/null

Wie Sie sehen können, wenn „ls ‘ normal ausgeführt wird, zeigt es den Inhalt des Verzeichnisses als Ausgabe an, wenn es jedoch nach /dev/null umgeleitet wird , wird die komplette Ausgabe unterdrückt.

Schlussfolgerung

In diesem Artikel haben wir etwas über /dev/null erfahren und seine Verwendung unter Linux. Sie können mehr über das Umleiten der Ausgabe nach /dev/null erfahren mit verschiedenen Kombinationen von STDOUT und STDERR hier.

Wenn Sie Fragen oder Feedback haben, teilen Sie uns dies in den Kommentaren unten mit!


Linux
  1. Linux:Unterschied zwischen /dev/console , /dev/tty und /dev/tty0?

  2. Wie portabel sind /dev/stdin, /dev/stdout und /dev/stderr?

  3. Wann sollte /dev/random vs. /dev/urandom verwendet werden?

  4. Was sind /dev/zero- und /dev/null-Dateien in Linux

  5. DD von /dev/zero nach /dev/null ... was eigentlich passiert

tty (/dev/tty ) vs. pts (/dev/pts) unter Linux

Was ist „/dev/null 2&1“ unter Linux

So leiten Sie die Ausgabe unter Linux nach /dev/null um

/dev/null unter Linux

Wie Linux /dev/tty und /dev/tty0 verwendet

ls -l Ausgabe im Verzeichnis /dev des Unix/Linux-Systems