Random
如何使用隨機數據填充文件?
如何創建一個新文件並用 1 GB 的隨機數據填充它?我需要這個來測試一些軟體。
我更喜歡使用
/dev/random
or/dev/urandom
。
在大多數 unices 上:
head -c 1G </dev/urandom >myfile
如果您
head
不理解G
後綴,您可以指定字節大小:head -c 1073741824 </dev/urandom >myfile
如果您
head
不理解該-c
選項(這很常見,但不是 POSIX;您可能有 OpenBSD):dd bs=1024 count=1048576 </dev/urandom >myfile
假設偽隨機數據就足夠了,
dd if=/dev/urandom of=target-file bs=1M count=1000
就會做你想做的事。dd(1)將從輸入文件中讀取數據塊並將它們寫入輸出文件。命令行語言有點古怪,但它是值得掌握基礎知識的真正有用的工具之一。
在這種情況下
if
是輸入文件,of
是輸出文件,bs
是“塊大小”——我使用 GNU 擴展來更方便地設置大小。(如果您dd
沒有 GNU 擴展,您也可以使用 1048576。)count
是要讀取if
和寫入的塊數of
.
/dev/urandom
是一個更好的選擇,/dev/random
因為在 Linux 上,當真正的隨機數據耗盡時,它將回退到強偽隨機數據而不是阻塞。您可能還想查看http://www.random.org/作為獲取一些隨機數據而無需自己生成的另一種途徑。