if=
nicht erforderlich ist, können Sie etwas in dd
leiten stattdessen:
something... | dd of=sample.txt bs=1G count=1
Es wäre hier seit openssl rand
nicht mehr sinnvoll erfordert ohnehin die Angabe der Anzahl der Bytes. Sie brauchen also dd
eigentlich nicht – dies würde funktionieren:
openssl rand -out sample.txt -base64 $(( 2**30 * 3/4 ))
1 Gigabyte sind normalerweise 2 Bytes (obwohl Sie 10**9
verwenden können für 10 Bytes statt). Die * 3/4
Teil berücksichtigt den Base64-Overhead und macht das codiert Ausgabe 1 GB.
Alternativ können Sie /dev/urandom
verwenden , aber es wäre etwas langsamer als OpenSSL:
dd if=/dev/urandom of=sample.txt bs=1G count=1
Ich persönlich würde bs=64M count=16
verwenden oder ähnlich:
dd if=/dev/urandom of=sample.txt bs=64M count=16
Erstellen Sie eine zufällige Inhaltsdatei von 1 GB.bin:
dd if=/dev/urandom of=1GB.bin bs=64M count=16 iflag=fullblock
Wenn Sie GENAU 1 GB wollen, können Sie Folgendes verwenden:
openssl rand -out $testfile -base64 792917038; kürzen -s-1 $testfile
Der Befehl openssl macht eine Datei genau 1 Byte zu groß. Der Befehl truncate entfernt dieses Byte.