用robocopy覆盖


12

我正在使用robocopy复制文件,但是挂起了(我想原因是该位置已经存在该文件)。是否有一个选项可以用来覆盖文件(如果文件已经在目标文件中)或者可以复制文件(如果文件不在目标文件中)?


1
挂什么意思?您看到错误或任何东西吗?PS看看/ mir选项...
克里斯·穆特里

它不会给出任何错误。我无法使用/ mir选项,因为它会删除目标文件夹中已经存在的文件。请提出一些其他选项。
gautam kumar,

尝试where robocopy找到robocopy可执行文件,并确保您使用的可执行文件与操作系统匹配。IIRC,曾经与资源工具包一起分发的robocopy的较旧版本与以后的操作系统不完全兼容,并且可能表现为挂起。
哈里·约翰斯顿

您可以使用/ V选项运行它以显示详细信息。
M-Razavi 2015年

Answers:


20

尝试/is哪个是“包括相同文件”。就我而言,robocopy不会覆盖文件,但是使用此选项,它将覆盖。


6

Robocopy将能够覆盖文件,除非您告诉它不要(使用其中一个/X*开关)。锁定的文件可以将其挂起,但实际上Robocopy会重试,默认情况下这意味着重试该文件可能需要很长时间。您可以更改重试选项,以使其仅重试几次,并且在重试之间可能不会等待很长时间。

来自robocopy.exe /?

::
:: Retry Options :
::
/R:n :: number of Retries on failed copies: default 1 million.
/W:n :: Wait time between retries: default is 30 seconds.

/REG :: Save /R:n and /W:n in the Registry as default settings.

/TBD :: wait for sharenames To Be Defined (retry error 67).

另外,有可能通过结点递归地复制数据。我总是/XJ在Robocopy操作中使用该选项来防止这种情况。

作为魔鬼的拥护者的问题:

  1. 您正在使用什么命令行,并且可以给我们控制台输出?
  2. 您确定挂起的文件不是很大吗?
  3. 您确定文件未锁定?
  4. 您是否正在桌面上运行此交互?可能与权限相关吗?

尼尔,您好,谢谢您的回答。因此,您的意思是说默认情况下,如果目标文件夹中已存在该文件,则robocopy将覆盖该文件。
gautam kumar,

当然应该,是的。
尼尔·巴恩韦尔

您能告诉我在这种情况下的退出代码吗?
gautam kumar,

1
当然,尽管我不确定它如何为您提供帮助:ss64.com/nt/robocopy-exit.html
Neil Barnwell,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.