2010-12-06 92 views
3

这里是我打算用来生成500个随机数据填充的测试文件的脚本。随机生成可变大小的测试文件

for((counter=1;counter<=500;counter++)); 
      do 
      echo Creating file$counter; 
      dd bs=1M count=10 if=/dev/urandom of=file$counter; 

       done 

但我需要的脚本是使这些500个文件是可变的大小,如1M之间和10M;即file1 = 1M,file2 = 10M,file3 = 9M等...

有帮助吗?

回答

3

这将产生500个文件各自含有兆字节的随机字节在1和10之间。

#!/bin/bash 
max=10 # number of megabytes 
for ((counter=1; counter<=500; counter++)) 
do 
    echo Creating file$counter 
    dd bs=1M count=$(($RANDOM%max + 1)) if=/dev/urandom of=file$counter 
done 

第二行可改为:

for counter in {1..500} 
3
set MAX=10 
for((counter=1;counter<=500;counter++)); 
do 
    echo "Creating file$counter" 
    dd bs=$((($RANDOM%$MAX)+1 ))M count=10 if=/dev/urandom of=file$counter 
done 
+0

非常感谢好像我不应该需要“设置”加上不知道为什么不能稳定下来,我得到错误,如“创建文件4 DD :无效号码'0M'“有时...? – deepseefan 2010-12-07 00:38:18

+0

这将介于0到90 MB之间,步长为10 MB,而不是1 MB步骤中的1-10 MB。 – 2010-12-07 01:24:25