if=
tidak diperlukan, Anda dapat menyalurkan sesuatu ke dd
sebagai gantinya:
something... | dd of=sample.txt bs=1G count=1
Ini tidak akan berguna di sini sejak openssl rand
tetap harus menentukan jumlah byte. Jadi Anda sebenarnya tidak membutuhkan dd
– ini akan berhasil:
openssl rand -out sample.txt -base64 $(( 2**30 * 3/4 ))
1 gigabyte biasanya 2 byte (meskipun Anda dapat menggunakan 10**9
untuk 10 byte sebagai gantinya). * 3/4
bagian memperhitungkan overhead Base64, membuat dikodekan keluaran 1 GB.
Sebagai alternatif, Anda dapat menggunakan /dev/urandom
, tetapi akan sedikit lebih lambat dari OpenSSL:
dd if=/dev/urandom of=sample.txt bs=1G count=1
Secara pribadi, saya akan menggunakan bs=64M count=16
atau serupa:
dd if=/dev/urandom of=sample.txt bs=64M count=16
Buat file konten acak 1GB.bin:
dd if=/dev/urandom of=1GB.bin bs=64M count=16 iflag=fullblock
Jika Anda ingin PERSIS 1GB, maka Anda dapat menggunakan yang berikut ini:
openssl rand -out $testfile -base64 792917038; truncate -s-1 $testfile
Perintah openssl membuat file persis 1 byte terlalu besar. Perintah truncate memotong byte itu.