精华内容
下载资源
问答
  • 主要介绍了Shell脚本创建指定大小文件的测试数据,本文同时给出使用DD命令和Shell脚本解决这个需求,给出的脚本功能更加强大,需要的朋友可以参考下
  • Liunx和Windows系统下创建指定大小文件方法:linux中可以使用dd 、fallocate或者truncate命令创建;windows系统使用fsutil工具创建

    在测试中有时需要创建不同大小的测试文件,用于测试上传下载性能以及以及其它文件传输功能,本文介绍几种Liunx和Windows系统下创建指定大小文件的方法。

    Linux系统创建指定大小文件

    下面介绍的dd 、fallocate和truncate命令包含于GNU coreutils软件包中,不需要单独安装。

    dd命令

    dd (device driver) 命令常用来复制备份文件,与cp命令具有以下区别:

    • dd是对块进行操作,操作磁盘的扇区字节,
    • cp操作文件或目录,对于不能以文件或目录格式呈现的数据cp无法复制。
    • dd是对磁盘连续的读取,也就是完全的数据搬移,cp复制的数据排列不是按顺序的。

    也可以使用这个命令来创建特定大小的文件。

    root@Server ~]# dd if=/dev/urandom of=testfile10MB_dd bs=10MB count=1
    记录了1+0 的读入
    记录了1+0 的写出
    10000000字节(10 MB)已复制,0.124436 秒,80.4 MB/秒
    root@Server ~]# ll testfile10MB_dd
    -rw-r--r--   1 root    root    10000000 7月   7 11:56 testfile10MB_dd
    [root@Server ~]# du testfile10MB_dd
    9768    testfile10MB_dd
    

    /dev/urandom用于生成随机数据,也可以使用/dev/zero来生成全0的文件:

    [root@Server ~]# dd if=/dev/zero of=testfile10MB_dd0 bs=10MB count=1
    记录了1+0 的读入
    记录了1+0 的写出
    10000000字节(10 MB)已复制,0.00799675 秒,1.3 GB/秒
    [root@Server ~]# ll testfile10MB_dd0
    -rw-r--r--   1 root    root    10000000 7月   7 13:57 testfile10MB_dd0
    [root@Server ~]# od -c testfile10MB_dd0
    0000000  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
    *
    46113200
    [root@Server ~]# 
    

    /dev/urandom、/dev/random以及/dev/zero、/dev/null介绍

    • /dev/urandom和/dev/random都可以产生随机的ASCII码字符流,其中/dev/random依赖系统中断,当系统中断不足时,/dev/random设备会“挂起”。/dev/urandom不依赖系统中断,所以在生成特定大小文件时一般使用/dev/urandom,不使用/dev/urandom。
    • /dev/zero “零”设备可以无限的提供空字符,产生二进制的零流
    • /dev/null “空”设备,像”黑洞“一样,所有写入它的内容都会永远丢失,也不会读取到任何内容。常用于禁止标准输出和标准错误的输出,比如抓包命令:tcpdump -i eth1 -w /tmp/packet.pcap >/dev/null &

    根据/dev/urandom的特性,也可以结合head命令来创建指定大小的文件:

    head -c 10MB /dev/urandom > testfile10MB
    # 或者
    head -c 10MB /dev/zero > testfile10MB
    

    bs参数和truncate命令的size参数类似,默认单位为bytes,也支持以下单位:

    • c =1 bytes, w =2 bytes, b =512 bytes
    • K, M, G, T, P, E, Z, Y(幂底数为1024 bytes,如5M=5×1024×1024)
    • KB, MB, GB …(幂底数为1000 bytes,如5MB=5×1000×1000)

    fallocate命令

    fallocate用于创建大文件(大于2G):

    [root@Server ~]# fallocate -l 2G testfile2G_fal
    [root@Server ~]# ll testfile2G_fal
    -rw-r--r--   1 root    root    2147483648 7月   7 14:01 testfile2G_fal
    

    -l参数指定文件大小,默认单位为bytes,也可以指定单位:K, M, G, T, P, E, Z, Y以及KB, MB, GB等

    truncate命令

    truncate命令也可以用来创建指定大小的文件,下面创建一个10 MB大小的文件

    [root@Server ~]# truncate -s 10M testfile10M
    [root@Server ~]# ll testfile10M
    -rw-r--r--   1 root    root    10485760 7月   7 10:45 testfile10M
    [root@Server ~]# 
    [root@Server ~]# truncate -s 10MB testfile10Mb
    [root@Server ~]# ll testfile10Mb
    -rw-r--r--   1 root    root    10000000 7月   7 10:49 testfile10Mb
    

    -s | --size参数 用于指定要生成的文件大小,单位可以是:

    • K, M, G, T, P, E, Z, Y(幂底数为1024 bytes,如5M=5×1024×1024)
    • KB, MB, GB …(幂底数为1000 bytes,如5MB=5×1000×1000)

    dd 、fallocate和truncate的区别

    truncate命令生成的是空洞文件,并不占用实际的磁盘空间,文件中间是用“\0”填充的,实际占用的空间为0。使用du命令查看truncate生成文件占用的磁盘空间:

    [root@Server ~]# ll testfile10Mb
    -rw-r--r-- 1 root root 10000000 7月   7 14:30 testfile10Mb
    [root@Server ~]# du -sh testfile10Mb
    0       testfile10Mb
    [root@Server ~]# od -c testfile10Mb
    0000000  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
    *
    46113200
    [root@Server ~]# 
    

    fallocate命令为文件预分配物理空间,分配的空间在磁盘的扇区上是连续的,生成的不是空洞文件,不是空洞文件那样“假装”占有那么多空间:

    [root@Server ~]# ll testfile2G_fal
    -rw-r--r-- 1 root root 2147483648 7月   7 14:01 testfile2G_fal
    [root@Server ~]# du -sh testfile2G_fal
    2.0G    testfile2G_fal
    

    可以看到,和truncate不一样,用fallocate生成的文件在磁盘上确实占用了2.0G的空间。

    dd命令生成的文件也不是空洞文件,使用它来生成大文件时速度较慢,而且使用dd以及提到的head命令生成文件时会进行大量IO操作,所以在Linux中生成文件时,建议使用fallocate命令。

    Windows系统创建指定大小文件

    fsutil工具

    Windows中可以使用fsutil工具生成文件,命令语法格式如下:

    fsutil file createNew test.txt 1024 # 文件大小单位为bytes
    

    以管理员身份打开cmd,创建一个5M bytes的文件:5×1024×1024=5242880 bytes

    C:\Users\DELL> fsutil file createNew test.txt 5242880
    File C:\Users\DELL\test.txt is created
    C:\Users\DELL> dir test.txt | findstr test.txt
    2021/07/07  15:26         5,242,880 test.txt
    
    --THE END--

    欢迎关注公众号:「测试开发小记」及时接收最新技术文章!

    展开全文
  • 使用cmd命令创建指定大小文件

    千次阅读 2020-10-12 10:01:50
    1.打开电脑的cmd(windows + R) 2.输入命令: fsutil file createnew e:\2GB....3.等待cmd运行完成,即可以在指定盘创建一个指定大小文件,这里是在E盘中创建一个2G的txt文件 备注:2147483648指2GB对应的字节数 ...

    1.打开电脑的cmd(windows + R)

    2.输入命令:

    fsutil file createnew e:\2GB.txt 2147483648

    3.等待cmd运行完成,即可以在指定盘创建一个指定大小的文件,这里是在E盘中创建一个2G的txt文件
    备注:2147483648指2GB对应的字节数

    展开全文
  • linux创建指定大小文件

    千次阅读 2019-10-12 10:35:00
    二、生成文件大小固定,但实际不占空间命令 dd if=/dev/zero of=1G.img bs=1M seek=1000 count=0 这里用了一个新的命令seek,表示略过1000个Block不写(这里Block按照bs的定义是1M),count=0表示写入0个...

    一、生成文件大小和实际占空间大小一样的文件

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

    文件名称name.file
    bs=1M表示每一次读写1M数据,count=50表示读写 50次,这样就指定了生成文件的大小为50M。

    二、生成文件大小固定,但实际不占空间命令

    dd if=/dev/zero of=1G.img bs=1M seek=1000 count=0
    

    这里用了一个新的命令seek,表示略过1000个Block不写(这里Block按照bs的定义是1M),count=0表示写入0个Block。用ls(查看文件大小)命令看新生成的文件,大小可以看出是1000M。但是再用du(查看文件占用空间)一看,实际占用硬盘大小只有0M。

    其它

    linux获取当前的时间

    date "+%Y-%m-%d %H:%M:%S"
    

    /dev/zero

    “零”设备,可以无限的提供空字符(0x00,ASCII代码NUL)。常用来生成一个特定大小的文件。例如:

    dd if=/dev/zero of=./output.txt bs=1024 count=1 #产生一个1k大小的文件output.txt
    

    参考文章

    https://blog.csdn.net/weixin_33913332/article/details/86361277

    https://blog.csdn.net/sinat_26058371/article/details/86754683

    展开全文
  • Linux下一个用于批量创建指定大小文件的jar包,直接调用,方便快捷,具体操作方法见我博客:https://blog.csdn.net/qq_32897143/article/details/80136300
  • fsutil file createnew new.zip 5242880 fsutil | Microsoft Docs

    fsutil file createnew new.zip 5242880

    fsutil | Microsoft Docs

    展开全文
  • 下面对在windows下创建指定大小文件进行简单介绍: 使用 fsutil 命名,可在cmd窗口查看fsutil 支持的命令,如图 由此可知,我们可通过fsutil file createnew 命令来新建指定大小文件 用法: fsutil file ...
  • 若要生成指定格式和大小文件,需在 cmd中输入:fsutil file createnew指定盘: \相关路径(生成文件名称) .格式(rar较多)899999999 (8G文件) fsutil file createnew d:\100M.pdf 104857600 祝您万事顺心,没事点个...
  • 在做资源更新的时候要做 磁盘空间不足的测试,于是想创建一个文件塞满硬盘,搜索到可以用命令创建。 fsutil file createnew null.zip 524288000 转载于:...
  •  linux创建文件命令:dd命令 把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换。语法: CODE:[Copy to clipboard]dd 〔选项〕 QUOTE: if =输入文件(或设备名称)。of =输出文件(或...
  • Linux 命令行 创建指定大小文件

    千次阅读 2018-03-06 15:21:03
    经常有看到VPS、服务器等主机...本文介绍下如何在linux命令行下创建指定大小文件(这里以创建13MB大小的文件onebox.test为例)。truncatetruncate -s 13M onebox.test fallocatefallocate -l 13000000 onebox.tes...
  • 文章目录简单介绍使用方法详解常规使用快速生成指定大小文件使用场景总结 在很多场景下我们需要一个很大的文件,例如测试网速,测试硬盘配额大小等等。如果这时候电脑上没有单个的大文件就会比较尴尬。如果你用的是...
  • 1、dd命令 of:fileName为文件名称,例如test.txt ; bs:设置一次复制的大小,例如1M; count:设置复制次数,例如100; dd if=/dev/zero of=<fileName> bs=<一次复制的大小> count=<复制的次数>...
  • 创建指定大小文件

    2019-09-28 01:07:09
    实现类似Linux下的dd命令: $tempFile = "C:\test1.txt" $fs = New-Object System.IO.FileStream($tempFile,[System.IO.FileMode]::OpenOrCreate) $fs.Seek(2GB,[System.IO.SeekOrigin]::Begin) $fs.WriteByte...
  • dd命令可以轻易实现创建指定大小文件,如 dd if=/dev/zero of=test bs=1M count=1000 会生成一个1000M的test文件文件内容为全0(因从/dev/zero中读取,/dev/zero为0源) 但是这样为实际写入硬盘,文件产生速度取...
  • touch命令 创建文件

    2021-01-09 19:02:55
    touch命令有两个功能:一是创建新的空文件,二是改变已有文件的时间戳属性。 touch命令会根据当前的系统时间更新指定文件的访问时间和修改时间。如果文件不存在,将会创建新的空文件,除非指定了”-c”或”-h”选项...
  • 有时候需要文件来测试,需要把文件设置为指定大小,在linux中很容易搞起: ubuntu@VM-0-15-ubuntu:~/taoge/cpp$ dd if=/dev/zero of=zeroFile bs=1K count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB, ...
  • 在控制台输入一下命令 fsutil file createnew 路径\文件名 大小(字节)
  • Windows下创建一个指定大小的txt文件方法: 首先运行,调出cmd命令窗; 然后输入“fsutil file createnew test.txt 6442” 6442为文件大小(KB) ...
  • 生成指定大小文件供测试

    千次阅读 2017-09-12 11:32:44
    方法一:通过脚本的不断运行向特定文件不断写入特定大小的字符 制作指定文件的大小:...方法二:通过CMD设定新建特定大小文件命令 fsutil file createnew test.txt 6442450944【可设定路径及后缀名】
  • Linux 命令生成指定大小文件

    千次阅读 2019-05-29 14:44:42
    dd if=/dev/zero of=/Users/testmacair/Documents/test.txt bs=1k count=1000 //生成1M大小文件方法 注释: if - File used as stdin of - File used as stdout bs - Bytes of a block count - number of ...
  • 那么该如何简单快速地去创建指定大小文件,批量生成文件在windows或这linux系统的指定目录下呢?下面我将把我这几天get到的小技能记录分享一下= ̄ω ̄=Windows下生成文件:生成单个指定大小文件进入...
  • java秒建指定大小文件

    千次阅读 2019-05-31 10:11:54
    java创建指定大小文件 ,秒建任意大小的文件 package Dirty.File; import lombok.Cleanup; import lombok.SneakyThrows; import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; ...
  • C# 创建指定大小文件 C#读取大文件

    千次阅读 多人点赞 2016-09-18 20:46:58
    C# 创建指定大小文件 C#读取大文件

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 726,669
精华内容 290,667
关键字:

创建指定大小的文件命令