gpt4 book ai didi

linux - bittorrent 如何组装丢失的部分?

转载 作者:太空宇宙 更新时间:2023-11-04 09:14:48 30 4
gpt4 key购买 nike

我使用 BitTorrent,有时会遇到没有种子的文件(缺失部分)。
那时,我们有时会强制结束文件传输并尝试打开未完成的文件(例如图像文件)。
如果幸运的话,即使丢失了某些部分,也可能能够看到下载的图像。

我想人为地重现这种情况,以下是我的尝试:
1)用Linux split命令将一个1MB左右的bmp图片文件分割成16KB,
2) 然后将其中一个分割后的文件设为0 KB。
3) 之后,使用 cat 命令重新加入所有文件。

但是,在这种情况下,与种子文件“丢失碎片”的情况不同,文件完全损坏,无法读取。
从理论上讲它似乎没有什么特别的,但是有什么问题吗?我怎样才能实现我想要的?
非常感谢您的帮助。

最佳答案

使用dd:

dd if=/dev/zero of=image.jpg bs=1 conv=notrunc seek=X count=Y

X 是您要删除的文件中的偏移量,Y 是字节数。

关于损坏,这取决于文件的类型、您丢失的部分以及您用来读取它的程序。

例如,JPG 文件使用可变位长编码,这意味着仅丢失一位可能会损坏从该点开始的所有文件。但就此而言,可以有比特流重置的重新同步点,因此从那一点开始,文件看起来没问题。但是这些重新同步点在写入文件时是可选的,并不是每个读者都尊重它们以防损坏...

无论如何,丢失部分 header 将使文件完全不可读。

关于linux - bittorrent 如何组装丢失的部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49300099/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com