大家都知道,在我们上传文件到百度云时,他会先读取文件的md5值。

如果该md5在他的数据库中,

就会直接把文件的一个软链接复制到你的云盘中,给你一种光速上传的感觉。

但是所有资源都要经过百度云的审查之后才能上传成功,否则就会有各种原因无法访问。

所以重要文件不建议放在百度云,说不定哪天你就拿不回来了。

回到正题,现在我想上传一个video到百度云上,发现之前有人上传过导致被和谐。

我们可以通过修改md5的值实现让百度以为这是另一个文件。

最安全的方法是压缩后再上传,但是有些麻烦,还不能在线播放和预览。

在window上可以通过copy这个命令合并两个文件成一个文件。

但是Linux上如何解决呢?

经过查找后,感谢v2ex,有人问过相同的问题。

其实只要在文件末尾后面加二进制的00即可,既不会改变文件的大概性质,还实现了修改md5。

以a.txt演示,命令如下:

1
echo -e -n "\x00" >> 你的文件

演示效果如下:

批量修改当前文件夹下所有文件md5值的命令:

1
find . -type f -exec bash -c 'echo -e -n "\x00" >> {}' \;