用Python创建大型随机内容文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Python创建大型随机内容文件相关的知识,希望对你有一定的参考价值。

我正在研究SSD驱动器的特性,以确定最大TBW /预期寿命。

目前我正在使用BASH生成具有随机(非零)内容的500MB文件:

dd if=<(openssl enc -aes-128-cbc -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null | base64)" -nosalt < /dev/zero) of=/media/m2_adv3d/abc${stamp1} bs=1MB count=500 iflag=fullblock&

Note : {stamp1} is a time stamp for ensuring unique file names.

我希望在Python中完成相同的结果,但我找不到有效的方法(快速生成文件)。

寻找建议。

谢谢!


更新

我一直在试验以下内容,似乎已经实现了2秒写入;文件似乎是随机的和不同的:

import os

newfile = open("testfile.001", "a")
newfile.write (os.urandom(500000000))    # generate 500MB random content file
newfile.close ()

有点怀疑这是否真的足以强调SSD。基本上无限循环这个;一旦驱动器已满,删除到最旧的文件并写入新文件,并收集每500个文件中的SMART数据以趋势老化。

思考?

谢谢,

Dan.

答案

你可以尝试像这样简单的事情。

import pandas as pd
import numpy as np

rows = 100000
cols = 10000

table_size = [rows,cols]

x = np.ones(table_size)
pd.DataFrame(x).to_csv(path)

您可以更新表格大小以使其更大或更小。我不确定这是否比你已经尝试的更有效率。

以上是关于用Python创建大型随机内容文件的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

Python - 循环加速 - 大型数据集

Android 逆向使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )(代码片段

java获取随机时间的源码片段

我应该用片段替换 Android 活动吗?

VSCode 创建.py自动添加文件头注释的设置