Подтвердить что ты не робот

Разница между xcopy и robocopy

Я немного новый для пакетного сценария. Как новичок, я считаю, что оба они полезны при написании сценариев Каковы основные различия между xcopy и robocopy?

4b9b3361

Ответ 1

Robocopy заменяет XCopy в более новых версиях окон

  • Использует зеркалирование, XCopy не
  • Имеет параметр /RH, позволяющий установить установленное время для запуска копии
  • Есть опция /MON: n для проверки различий в файлах.
  • Копирует больше атрибутов файлов, чем XCopy

Да, я согласен с Марком Сетчеллом, они оба дерьмо. (предоставлено Microsoft)


UPDATE:

Коды возврата XCopy:

0 - Files were copied without error.
1 - No files were found to copy.
2 - The user pressed CTRL+C to terminate xcopy. enough memory or disk space, or you entered an invalid drive name or invalid syntax on the command line.
5 - Disk write error occurred.

Robocopy возвращает коды:

0 - No errors occurred, and no copying was done. The source and destination directory trees are completely synchronized.
1 - One or more files were copied successfully (that is, new files have arrived).
2 - Some Extra files or directories were detected. No files were copied Examine the output log for details. 
3 - (2+1) Some files were copied. Additional files were present. No failure was encountered.
4 - Some Mismatched files or directories were detected. Examine the output log. Some housekeeping may be needed.
5 - (4+1) Some files were copied. Some files were mismatched. No failure was encountered.
6 - (4+2) Additional files and mismatched files exist. No files were copied and no failures were encountered. This means that the files already exist in the destination directory
7 - (4+1+2) Files were copied, a file mismatch was present, and additional files were present.
8 - Some files or directories could not be copied (copy errors occurred and the retry limit was exceeded). Check these errors further.
16 - Serious error. Robocopy did not copy any files. Either a usage error or an error due to insufficient access privileges on the source or destination directories.

Более подробная информация о возвращаемых значениях Robocopy приведена здесь: http://ss64.com/nt/robocopy-exit.html

Ответ 2

Самое важное отличие состоит в том, что robocopy будет (обычно) повторять попытку, когда возникает ошибка, а xcopy - нет. В большинстве случаев это делает robocopy гораздо более подходящим для использования в script.

Ответ 3

Различия, которые я мог видеть, это то, что у Robocopy гораздо больше возможностей, но я не нашел их особенно полезными, если я не делаю что-то особенное.

Я провела несколько тестов для нескольких копий и обнаружила, что XCOPY и ROBOCOPY являются самыми быстрыми, но, к моему удивлению, XCOPY последовательно вырезал Robocopy.

Иронично, что robocopy повторяет копию, которая терпит неудачу, но она также сильно не удалась в моих тестовых тестах, где xcopy так и не сделал.

Я сделал полный файл (байтовый байт), который сравнивается после моих тестовых тестов.

Вот те переключатели, которые я использовал с robocopy в моих тестах:

 **"/E /R:1 /W:1 /NP /NFL /NDL"**.  

Если кто-то знает более быструю комбинацию (кроме удаления /E, которая мне нужна), я бы хотел услышать.

Еще одна интересная/неутешительная вещь с robocopy заключается в том, что если копия не работает, по умолчанию она повторяет 1,000,000 раз с задержкой 30 секунд между каждой попыткой. Если вы запускаете длинный пакетный файл без присмотра, вы можете быть очень разочарованы, когда вернетесь через несколько часов, чтобы найти, что он все еще пытается скопировать определенный файл.

Переключатели/R и /W позволяют изменять это поведение.

  • С помощью /R вы можете сказать, сколько раз повторять попытку,
  • /W позволяет указать время ожидания перед повторными попытками.

Если есть способ прикреплять файлы здесь, я могу поделиться своими результатами.

  • Мои тесты были выполнены на одном компьютере и
  • скопированные файлы с одного внешнего диска на другой внешний,
  • на портах USB 3.0.

Я также включил FastCopy и Windows Copy в свои тесты, и каждый тест запускался 10 раз. Заметьте, различия были довольно значительными. 95% доверительные интервалы не перекрывались.

Ответ 4

Они оба мусор! XCOPY был старше и ненадежным, поэтому Microsoft заменила его на ROBOCOPY, который все еще мусор.

http://answers.microsoft.com/en-us/windows/forum/windows_8-files/robocopy-appears-to-be-broken-in-windows-8/9a7634c4-3a9d-4f2d-97ae-093002a638a9

Не волнуйтесь, это давняя традиция, начатая исходной командой COPY, которая по сей день все еще нуждается в переключателе /B, чтобы заставить ее фактически правильно копировать!