我有大量文件需要在服务器之间传送。 我正在使用 robocopy,通常它工作得很好。 问题是当复制时某些文件正在被其他应用程序使用时 - Robocopy 比较原始文件和复制文件的文件标记并失败(因为原始文件的标记正在更改)。 如何忽略比较并告诉 Robocopy 跳过已复制的文件? 谢谢!
你不能。 Robocopy 不“知道”文件正在使用,如果它确定时间戳、大小或文件名发生更改,则会选择该文件进行复制。特别是,如果目标中已经存在具有相同文件名的文件,robocopy 想要将这个过时的文件“更新”到最新版本(因为较旧的时间戳,也可能是大小的变化)。这就是 robocopy 的全部目的。
不幸的是,robocopy不支持卷影复制文件(也就是说,所有文件都将从冻结的时间点复制,即使有传入的更改)。
由于您没有提供有关调用 robocopy 的命令行及其引发的错误的任何详细信息,因此很难说是否有改进的方法。例如,选项
/R
和 /W
极大地影响 robocopy 的行为。例如,在我的脚本中,我将它们设置为 /R:0
和 /W:0
以避免任何重试。我有锁定文件的问题(也被忽略,这对我来说很好),但在备份运行期间更改的文件没有问题(它们只复制一次,之后的所有更改都不在备份中;这也很好对我来说)。