if=
не требуется, вы можете передать что-то dd
вместо этого:
something... | dd of=sample.txt bs=1G count=1
Это не было бы полезно здесь, так openssl rand
как в любом случае требует указания количества байтов. Так что вам на самом деле не нужно dd
- это будет работать:
openssl rand -out sample.txt -base64 $(( 2**30 * 3/4 ))
1 гигабайт обычно составляет 2 30 байтов (хотя вы можете использовать вместо 10**9
10 9 байтов). Эта * 3/4
часть учитывает накладные расходы Base64, делая кодированный вывод 1 ГБ.
В качестве альтернативы вы можете использовать /dev/urandom
, но это будет немного медленнее, чем OpenSSL:
dd if=/dev/urandom of=sample.txt bs=1G count=1
Лично я бы использовал bs=64M count=16
или подобное:
dd if=/dev/urandom of=sample.txt bs=64M count=16
/dev/urandom
двоичный файл, а не настоящий текстовый файл.