功能说明:
可以借助dd命令生成指定大小的文件,文件填充的内容可以是顺序也可以是随机的;除此之外,也可以借助shell命令批量生成多个文件,以供特殊场景测试
Demo:
1、生成1个1G大小的文件,文件填充全为0
dd if=/dev/zero of=test bs=1M count=1000
其中,/dev/zero为0源,test为生成后的文件名。bs是块大小,count是块的数量,所以这个文件的大小是block_size x block_count=1GB。
如果我们只想让文件系统认为存在一个超大文件在此,但是并不实际写入硬盘,可以
dd if=/dev/zero of=test bs=1M count=0 seek=100000
2、生成1个1G大小的文件,文件填充内容为随机数据
dd if=/dev/urandom of=test bs=1M count=1000
其中 /dev/urandom 是随机数据源,所以生成的块内容填充的是随机数据
3、生成100个大小都是1GB的文件。创建create_file.sh,脚本内容如下:
N_FILE=100
DIR=/data/test
mkdir -p "$DIR"
for i in $(seq 1 $N_FILE); do
dd if=/dev/urandom of="${DIR}/file${i}" bs=1M count=1000
done