为什么robocopy重试1000000次?

时间:2017-08-16 07:58:50

标签: robocopy

我得到了几个用于文件同步的传统bat脚本。他们使用robocopy。根据{{​​3}},默认情况下,有一种重试机制: 100万重试,重试之间 30秒

因此,如果我理解得很好,如果某些内容变坏(例如目标文件夹中的磁盘空间不足),脚本将在大约 347天之前运行。

我很欣赏存在重试机制,但我不明白为什么默认行为就是这样。

默认参数值应该与普通和基本用例相匹配,对于文件副本,我几乎看不到重试点;我的意思是,如果它仍然不起作用,比方说,5次,这意味着应该修复某些地方(网络停机,磁盘死机......),值得停止并引发错误。

这种违约行为可能是什么原因?

1 个答案:

答案 0 :(得分:1)

答案"这种违约行为可能是什么原因?"我相信你的搜索是糟糕的设计。

然而 - 我会建议这种默认行为的意图是用户期望robocopy在完成时将是100%。跳过意味着副本不完整。管理员注意文件权限和锁的状态以确保成功,否则可以更改选项。此命令不适用于一般消费,并且是针对管理员的。

要缓解此问题,请使用/r:/w:选项将其更改为适合您用例的内容。

例如

robocopy /r:3 /w:10 c:\src c:\dest

将c:\ src复制到c:\ dest,重试时可能需要重试10次,重试次数为10秒。

您自己的文档链接显示了这些选项