相关疑难解决方法(0)

在Linux系统上快速创建大文件

如何在Linux(Red Hat Linux)系统上快速创建大文件?

dd将完成这项工作,但是/dev/zero当您需要一个数百GB的文件进行测试时,读取和写入驱动器可能需要很长时间......如果您需要重复这样做,那么时间真的会增加.

我不关心文件的内容,我只是想快速创建它.如何才能做到这一点?

使用稀疏文件不适用于此.我需要为文件分配磁盘空间.

linux filesystems file

406
推荐指数
11
解决办法
39万
查看次数

如何在Windows 7中使用Python廉价创建一个非常大的文件?

可能重复:
在Windows系统上快速创建大文件?

出于测试目的,我希望能够创建和删除非常大的文件(几个GB).我没有必要写任何特定于他们的东西.它们可能是随机数据.有没有办法通过简单地分配磁盘上的空间来生成一个大文件?如果没有,写这样一个文件的最快方法是什么?要在几秒钟内创建文件是可取的.

我需要在Python脚本中执行此操作,并且在Windows 7上执行此操作.

python filesystems file windows-7

8
推荐指数
1
解决办法
5965
查看次数

如何快速创建具有"自然"内容的大型(> 1gb)文本+二进制文件?(C#)

为了测试压缩,我需要能够创建大文件,理想情况下是文本,二进制和混合格式.

  • 文件的内容既不是完全随机也不是统一的.
    一个全零的二进制文件是不好的.具有完全随机数据的二进制文件也不好.对于文本,具有完全随机的ASCII序列的文件不好 - 文本文件应具有模拟自然语言或源代码(XML,C#等)的模式和频率.伪真实文本.
  • 每个文件的大小并不重要,但对于文件集,我需要的总数大约为8GB.
  • 我想将文件数量保持在可管理的水平,让我们说o(10).

为了创建二进制文件,我可以新建一个大缓冲区并在循环中执行System.Random.NextBytes后跟FileStream.Write,如下所示:

Int64 bytesRemaining = size;
byte[] buffer = new byte[sz];
using (Stream fileStream = new FileStream(Filename, FileMode.Create, FileAccess.Write))
{
    while (bytesRemaining > 0)
    {
        int sizeOfChunkToWrite = (bytesRemaining > buffer.Length) ? buffer.Length : (int)bytesRemaining;
        if (!zeroes) _rnd.NextBytes(buffer);
        fileStream.Write(buffer, 0, sizeOfChunkToWrite);
        bytesRemaining -= sizeOfChunkToWrite;
    }
    fileStream.Close();
}
Run Code Online (Sandbox Code Playgroud)

使用足够大的缓冲区,比方说512k,这相对较快,即使对于超过2或3gb的文件也是如此.但内容完全是随机的,这不是我想要的.

对于文本文件,我采用的方法是使用Lorem Ipsum,并通过StreamWriter将其重复发送到文本文件中.内容是非随机且不均匀的,但它确实有许多相同的重复块,这是不自然的.此外,由于Lorem Ispum块非常小(<1k),因此需要很多循环并且需要非常长的时间.

这些都不是我满意的.

我已经看到了在Windows系统上快速创建大文件的答案.这些方法非常快,但我认为它们只是用零或随机数据填充文件,这两者都不是我想要的.如果需要,我可以运行像contig或fsutil这样的外部进程.

测试在Windows上运行.
而不是创建新文件,仅使用文件系统中已存在的文件更有意义吗?我不知道任何足够大的东西.

如何从单个现有文件开始(对于文本文件可能是c:\ windows\Microsoft.NET\Framework\v2.0.50727\Config\enterprisesec.config.cch)并多次复制其内容?这适用于文本或二进制文件.

目前我有一种方法可行,但运行时间太长.

有没有人解决过这个问题?

编写文本文件比通过StreamWriter快得多吗?

建议?

编辑:我喜欢马尔可夫链的想法,以产生更自然的文本.但仍需要面对速度问题.

.net c# windows filesystems testing

7
推荐指数
3
解决办法
8152
查看次数

标签 统计

filesystems ×3

file ×2

.net ×1

c# ×1

linux ×1

python ×1

testing ×1

windows ×1

windows-7 ×1