Перезапись с помощью Robocopy

12

Я использую robocopy для копирования файлов, но он просто зависает (я думаю, причина в том, что файл уже присутствует в папке). Есть ли опция, с помощью которой я могу перезаписать файлы (если они уже находятся в месте назначения) или просто скопировать их, если их там нет?

Гаутам Кумар
источник
1
Что вы подразумеваете под зависаниями? Вы видите ошибку или что-нибудь? PS посмотрите на параметр / mir ...
Крис Мутрей,
Это не дает никакой ошибки. Я не могу использовать параметр / mir, поскольку он удалит файлы, уже имеющиеся в папке назначения. Пожалуйста, предложите некоторые другие параметры.
Гаутам Кумар
Попробуйте where robocopyнайти исполняемый файл robocopy и убедитесь, что тот, который вы используете, соответствует операционной системе. IIRC, более старая версия robocopy, которая раньше распространялась с комплектом ресурсов, не полностью совместима с более поздними операционными системами и может проявляться как зависание.
Гарри Джонстон
Вы можете запустить его с параметром / V, чтобы показать подробности, что он делает.
М-Разави

Ответы:

20

Попробуйте /is"включить те же файлы". В моем случае robocopy не будет перезаписывать файл, но с этой опцией это будет.

Chinoka
источник
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 перезапишет файл, если он уже находится в папке назначения.
Гаутам Кумар
Да, конечно.
Нил Барнвелл
Подскажите, пожалуйста, какой будет код выхода в этом случае?
Гаутам Кумар
1
Конечно, хотя я не уверен, как это вам поможет: ss64.com/nt/robocopy-exit.html
Нил Барнвелл,