Linux如何快速生成大文件

dd命令

dd if=/dev/zero of=file bs=1M count=20000

会生成一个20G的file 文件,文件内容为全0(因从/dev/zero中读取,/dev/zero为0源)。

此命令可以生成一个实际的20G的文件,文件会写入硬盘,文件产生的速度和硬盘读写速度有关系,读写速度越快,产生文件越快。

如果只想产生一个大文件的数据,但是并不需要占用磁盘空间,则可以使用如下命令:

dd if=/dev/zero of=file bs=1M count=0 seek=20000

此时创建的文件在文件系统中的显示大小为20G,但是并不实际占用磁盘,因此创建速度与内存速度相当。

seek的作用是跳过输出文件中指定大小的部分,这就达到了创建大文件,但是并不实际写入的目的。

当然,因为不实际写入硬盘,所以你在容量只有20G的硬盘上创建100G的此类文件都是可以的。

发表评论

1,575 次浏览