目前我的 Sync 中有以下部分代码:
...
int index = file.find(remoteDir);
if(index >= 0){
file.erase(index, remoteDir.size());
file.insert(index, localDir);
}
...
// Uses PUT command on the file
现在我想改为执行以下操作:
- 如果一个文件和以前一样,除了重命名,不要使用 PUT 命令,而是使用重命名命令
TL;DR:有没有办法检查文件是否与以前相同,只是发生了重命名?那么有一种方法可以比较两个文件(具有不同的名称)以查看它们是否相同?
最佳答案
检查 md5sum,如果不同则修改文件。 重命名文件的 md5 校验和将保持不变。文件内容的任何更改都会给出不同的值。
关于C++:使用同步时重命名而不是删除和复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22877956/