如何用随机数据替换文件的前几个字节?

时间:2014-03-11 13:28:31

标签: python bash random dd

我制作了一个脚本来创建包含随机数据的文件(主要基于dd),以便对缓存服务器进行性能测试。 我需要定期更新这些文件。 缓存服务器将读取文件的前1000个字节,如果它识别出来,它将从缓存中提供内容,而不是远离互联网上的某个服务器。

为了加快新文件的重新创建,我需要简单地更新前1000个字节。 如何打开文件并使用随机数据更新前1000个字节? 我想避免创建一个1000个随机字节的块并附加原始文件的其余部分。这意味着重写磁盘上的原始文件并且速度太慢。

我认为不可能使用dd。看起来dd无论如何都要写一个新文件。如果我错了,请纠正我。

我有什么选择? 我不介意在Python中这样做,但我是初学者......不确定这是最容易开始的。

1 个答案:

答案 0 :(得分:3)

您可以通过添加“conv = notrunc”来使用dd,例如

dd if=/dev/urandom of=myrandom bs=100 count=10 conv=notrunc

这将告诉dd在覆盖前1000个字节时不要消除文件的其余部分。