Ich habe versucht cat /dev/zero
, und es schien nichts zu tun. Ich habe gegoogelt /dev/zero
und es heißt, es ist im Grunde eine leere Datei mit unendlicher Größe. Gibt es cat
eine unendliche Anzahl nicht vorhandener Zeichen? Wie funktioniert das? Wie liefert es unendliche Daten, wenn es 0 Bytes ist? Wozu dient diese Datei, wenn man einfach eine leere Datei erstellen kann?
filesystems
tkbx
quelle
quelle
cat -v /dev/zero
zu sehen, was es tut. Siehe Löschen von nicht verwendetem Speicherplatz mit Nullen (ext3, ext4) für einen allgemeinen Zweck.cat foo > /dev/null
undcat foo > /dev/zero
sind gleich, abercat /dev/null
undcat /dev/zero
sind nicht gleich, richtig?/dev/null
Gibt sofort EOF zurück, wenn ein Programm daraus lesen möchte./dev/zero
gibt unendlich 0-Bytes zurück.Antworten:
/dev/zero
ist eine spezielle Datei (in diesem Fall ein Pseudo-Gerät), die einen endlosen Strom von Null-Zeichen (also hex 0x00) liefert? Das ist der Grund, warum Siecat
nichts ausgeben (aber versuchen Sie es durchzulaufenod
(oktaler Speicherauszug)).'Leere Datei mit unendlicher Größe' ist nicht zu 100% korrekt: Es handelt sich nicht um eine reguläre Datei, sondern um eine spezielle Datei (eher wie ein 'Stream' oder ein Generator). Sie können so viel davon lesen, wie Sie möchten, zum Beispiel mit
dd
(likedd if=/dev/zero of=yourfile count=1024 bs=1024
).Es ist keine leere Datei und wird auch nicht zum Erstellen leerer Dateien verwendet: Es wird zum Erstellen von Dateien oder Speicherseiten verwendet, die nur mit Nullen gefüllt sind. Sie können auch darauf schreiben, sodass es wie ein Dreckloch wirkt (der beliebtere Bruder
/dev/null
wird jedoch häufiger dafür verwendet).quelle
srm
Handbuch oder die Quelle nicht gelesen , aber die meisten "sicheren Radierer" ziehen es vor, (pseudo-) zufällige Daten zu schreiben, anstatt ein Laufwerk auf Null zu setzen, da ein Durchgang des Nullstellens nicht sicher genug ist (bestimmte Drei-Buchstaben-Agenturen) Der ursprüngliche Inhalt einer Festplatte mit Nullen kann immer noch abgezogen werden, da die einzelnen Bits nicht zu 100% echte 1 oder 0 sind, sondern nur "meistens 1" oder "meistens 0". Vergleichen Sie es mit einem Hebel, den Sie ganz nach links setzen können "oder" den ganzen Weg richtig ", aber in der Regel nur ein Schwung auf die andere Seite ist genug.dd
eine Partition zu erstellen, möchten Sie möglicherweise den gesamten leeren Speicherplatz auf 0 anstatt auf zufällig setzen, um später eine kleinere komprimierte Datei zu erhalten.