Vor einiger Zeit hatte ich mit PSiTransfer einen lokalen Dateiserver eingerichtet . Bei der Verwendung meines Dateiservers wollte ich das Upload-Limit, die maximale Upload-Größe und die Download-Geschwindigkeit der Dateien/Ordner testen. Zu diesem Zweck brauchte ich Dateien unterschiedlicher Größe. Ich habe Dateien unterschiedlicher Größe auf meiner Festplatte. Aber ich möchte, dass die Datei genau ist 100 MB in Größe. Nach ein wenig Websuche fand ich heraus, wie man Dateien einer bestimmten Größe in Linux- und Unix-ähnlichen Systemen erstellt.
Dateien einer bestimmten Größe unter Linux erstellen
Es gibt nur wenige Möglichkeiten, Dateien mit einer bestimmten Größe zu erstellen. Ich werde sie alle mit praktischen Beispielen zeigen.
Alle in diesem Leitfaden erwähnten Befehle sind Teil von GNU Coreutils , sodass Sie sie nicht installieren müssen. Diese Befehle sind standardmäßig vorinstalliert.
1. Erstellen Sie Dateien einer bestimmten Größe mit dem Befehl truncate
Um eine Datei mit einer bestimmten Größe zu erstellen, zum Beispiel 5 MB, verwenden Sie truncate
Befehl, führe aus:
$ truncate -s 5M ostechnix.txt
Der obige Befehl erstellt eine Datei namens ostechnix.txt
mit einer Größe von genau 5MB
.
Weitere Einzelheiten zu diesem Befehl finden Sie unter truncate
Handbuchseiten.
$ man truncate
2. Erstellen Sie Dateien einer bestimmten Größe mit dem Fallocate-Befehl
Der andere Befehl zum Erstellen einer Datei mit einer bestimmten Größe ist fallocate
. Bitte beachten Sie, dass Sie Dateigrößen nur in Byte angeben können mit fallocate
Befehl. Um die Größe für eine bestimmte Datei zu berechnen, zum Beispiel 5MB
, müssen Sie – 510241024=5242880
. Klar? Gut!
Lassen Sie uns nun mit dem Befehl:
eine Datei mit einer Größe von 5 MB erstellen$ fallocate -l 5242880 ostechnix.txt
Als Luc Van Rompaey Wie im Kommentarbereich vorgeschlagen, können Sie mit der Bash-Shell Inline-Arithmetik durchführen, sodass Sie nicht berechnen müssen, wie viele Bytes in 5 MiB
fließen vorher.
Wir können dies also wie unten gezeigt verwenden:
$ fallocate -l $((5*1024*1024)) ostechnix.txt
Für weitere Details zu diesem Befehl schlage ich vor, dass Sie fallocate
durchgehen Handbuchseiten.
$ man fallocate
3. Erstellen Sie Dateien einer bestimmten Größe mit dem Head-Befehl
Wir verwenden head
Befehl, um den ersten Teil der Dateien auszugeben, richtig? Nun, wir können diesen Befehl auch verwenden, um eine Datei mit einer bestimmten Größe zu erstellen.
So erstellen Sie eine Datei mit 5 MB
in der Größe mit head
Befehl, führe aus:
$ head -c 5MB /dev/urandom > ostechnix.txt
Der obige Befehl erstellt 5MB
Größe Datei gefüllt mit zufälligen Daten. Sie können die Datei auch mit 0s
erstellen wie unten gezeigt.
$ head -c 5MB /dev/zero > ostechnix.txt
Weitere Einzelheiten zu head
finden Sie in den Manpages Befehl.
$ man head
4. Erstellen Sie Dateien einer bestimmten Größe mit dem Befehl dd
Wir wussten bereits, dass wir eine Datei mit dd
konvertieren und kopieren können Befehl. Wir verwenden auch den Befehl dd, um eine bootfähige Festplatte zu erstellen . Wir können diesen Befehl jedoch auch verwenden, um Dateien einer bestimmten Größe zu erstellen.
Um eine Datei mit einer Größe von 5 MB zu erstellen, führen Sie Folgendes aus:
$ dd if=/dev/urandom of=ostechnix.txt bs=5MB count=1
Beispielausgabe:
1+0 records in 1+0 records out 5000000 bytes (5.0 MB, 4.8 MiB) copied, 0.0402477 s, 124 MB/s
Der Befehl erstellt ostechnix.txt
Datei der Größe 5MB
mit zufälligen Daten abgelegt.
Um eine Datei zu erstellen, die mit 0s
gefüllt ist , können Sie Folgendes verwenden:
$ dd if=/dev/zero of=ostechnix.txt bs=5MB count=1
Einzelheiten zu diesem Befehl finden Sie wie üblich im dd
Befehlsseiten.
$ man dd
Und das ist alles. Sie wissen jetzt, wie Sie eine Datei mit einer bestimmten Größe erstellen. Wie Sie in den obigen Beispielen sehen können, ist das Generieren von Dateien einer bestimmten Größe keine große Sache. Hoffe das hilft.
Empfohlene Lektüre:
- So ermitteln Sie die Größe eines Verzeichnisses in Linux
- Das mktemp-Befehls-Tutorial mit Beispielen für Anfänger