我目前正在使用 robocopy 来复制一个非常慢的目标文件。源文件和目标文件之间的比较可能需要一段时间才能完成。
由于目标永远不会改变(除了 robocopy 的改变),是否有任何程序可以类似地工作,但有一个目标所具有的文件(属性和时间戳)的本地列表,以供比较?
我知道有昂贵的解决方案可以解决这个问题,但如果可能的话,我正在寻找免费的解决方案。希望这有意义。
答案1
不,Robocopy 无法做到这一点。它将跳过目标中已存在的文件的文件数据,但需要实时比较文件属性(时间戳、ACL、文件大小)才能做到这一点。没有办法向 Robocopy 提供远程目标中文件属性的本地“目录”。
不要忘记在 Robocopy 中使用 /MT 开关(多线程);当您处理大量小文件时,它将加快此类小操作的速度。当一个线程被阻止等待查看远程文件的文件属性以便将其与本地副本进行比较时,另一个线程可以继续处理下一个文件,依此类推。使用 /MT 的默认值是 8 个线程,但您可以调整它。
您没有指定或提供任何其他有关这些是否是服务器的信息,但由于您在 SF 上询问了这个问题,我将假设您谈论的是 Windows Server。在这种情况下,您可以研究 DFS-R(分布式文件系统),它在增量文件传输、带宽限制和调度、动态数据压缩等方面非常高效。它还满足了您“尽可能免费”的要求,因为它是 Win Server 的标准开箱即用可安装角色。
答案2
尝试备份,它以稍微不同的方式解决您的问题。