linux和window下生成任意大小的文件

在Windows环境下的实现方法

  使用fsutil命令,在windows xp和win 7下应该都自带了这个命令。命令的格式是 fsutil file createnew 新文件名 文件大小。例如生成一个1K大小的文件,可以使用

  fsutil file createnew test.txt 1024

  可以使用dir 文件名 的方式查看生成的文件大小。操作结果如下图所示

  linux和window下生成任意大小的文件_第1张图片

  如果用记事本打开生成的test.txt文件,记事本显示的内容为空。这是因为文件是通过二进制的方式写入的,并且二进制的内容恰好都是全零,在ASCII码中,全零代表的空。通过UltraEdit打开文件,可以看到二进制的全零内容,如下图。

linux和window下生成任意大小的文件_第2张图片


在Linux环境下的实现方法

Linux下的dd命令很是强大,我刚开始玩Linux的时候就知道的。可以这样使用dd命令来创建指定大小的文件:


生成固定大小文件
dd if=/dev/zero of=/home/bluestorm/100M.img bs=1M count=1024(生成一个100M的文件,文件名为100M.img)

使用的格式如下:(从sina.html文件读取1024Byte字节生成一个文本文件mm0.txt)

“dd if=/home/sina.html of=/home/mms0.txt bs=1024 count=1”

if的参数是输入文件是新浪的主页,

of的参数是要生成的文件,

bs的参数是每次读入的block大小,这里就设为要生成的文件大小,

count的参数是读取的block个数,这里就设为1。

通过bs和count组合就可以生成指定大小的文件,根据if输入源的不同也内容也可以随机。


以上两种方法都是采用系统内置命令实现的;另外还可以编程和脚本实现:

 . 编程

方法是写入文件流,并且在代码中给定串的大小(Nbyte)。当然,这样的话java, C++, C应该都可以做到。


. 脚本

直接写一个windows下的批处理文件,或者用python这样的脚本语言写一个文件生成脚本。

比如:ping -l [数据包大小 最大65535] ip

你可能感兴趣的:(linux,windows)