测试 - 使用' dd'故意破坏.Z文件

时间:2014-06-09 23:18:46

标签: linux unix dd

我正在尝试测试我的Python程序,它接收.zip或.Z文件并分别使用Python的zipfile模块或Unix的gzip解压缩它们。在尝试执行任何操作之前,它确保文件类型为.zip或.Z(在后一种情况下,使用Unix的file命令)。我想在极少数情况下测试我的错误处理,在这种情况下,经过验证的存档文件在解压缩时出错。所以基本上,我想给它一个损坏的.Z文件。

有人建议我可以使用Unix的dd命令来搞乱一个好的.Z文件并将其用作我的错误输入。我找不到任何使用dd用于此用例的示例,并希望有人可以提供一个简单的示例。我知道我不应该弄乱标题,因为那是元数据告诉我们它是.Z文件的地方。所以我知道我需要搞砸一些中间和一些结束......感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您可以使用像hexedit这样的十六进制编辑器。

既然你问,

dd if=/dev/urandom of=yourfile.z bs=1024 seek=$((RANDOM%10)) count=1 conv=notrunc

会将垃圾重写为文件中前十个中的随机1024b块。