Erstellen Sie mehrere Dateien mit zufälligen Daten mit der bash
Wie erstelle ich mehrere Dateien (Mehr als 20k, ich brauche diese Dateien, um einen test für syncying) mit zufälligen Daten, die in OS X? Ich benutzt eine bereits zuvor beantwortete Frage ( Wie Kann ich Mehrere Dateien von Zufälligen Daten? ), die vorgeschlagen, dass Sie etwas wie
dd if=/dev/random bs=1 count=40000 | split -b 2
Aber mit, das gibt mir eine Fehlermeldung besagt, dass zu viele Dateien.Andere Möglichkeit, kann ich eine Schleife erstellen, Dateien anlegen mit beliebigen Daten?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie es mit einem shell -
for
Schleife:Anpassen
count
undbs
wie erforderlich sind, um Dateien von der Größe, die Sie interessieren. Beachten Sie, dass ich geändert, um/dev/urandom
zu verhindern, zu blockieren.Können Sie fügen Sie einige
>/dev/null 2>&1
um es beruhigen, auch.count
ist ein argumentdd
.man dd
für mehr.count=1
geben Sie einen block von Ausgabe-undbs=1
geben Sie eine block-Größe von einem - also ein einzelnes byte jedes mal, anstatt 2 bytes in deinem Beispiel.Den Grund, warum dein Ansatz nicht funktioniert, ist, dass die Standard-suffix für
split
(2 Buchstaben) ist nicht groß genug namespace für zwanzig tausend Dateien. Wenn Sie fügen Sie ein paar Optionen:(wo
-d
bedeutet "verwenden Sie Ziffern, nicht Buchstaben, für das suffix" - und-a 5
bedeutet "verwenden Sie die Suffixe der Länge 5"), müsste es doch funktionieren - getestet habe ich es mit/dev/urandom
(für Geschwindigkeit) auf einem GNU/Linux-Rechner ohne Probleme.Beachten Sie, dass dies ist viel schneller als die for-loop-Ansatz der anderen Antworten (2,5 Sekunden versus 43 Sekunden für Carl Norum Antwort auf meine Maschine).
Nicht sicher, ob du eine Datei benennen von Anforderungen, aber vielleicht dies: