9

Я хотел бы использовать xcopy для перемещения, а не копировать файлы по сети с флагом Verify. Я не смог найти переключатель на xcopy для перемещения файлов, есть ли xmove я могу использовать для verify?

В настоящее время я использую xcopy /D /V но мне нужно избавиться от файлов в источнике только после проверки того, что файл был успешно скопирован в место назначения.

2 ответа2

9

Вы должны проверить robocopy , он намного мощнее, чем xcopy . Вы можете легко перемещать файлы с помощью /MOV или /MOVE .

Переместить только файлы (удалить из источника после копирования)

robocopy from_folder to_folder files_to_copy /MOV

Для перемещения файлов и каталогов (удалить из источника после копирования)

robocopy from_folder to_folder files_to_copy /MOVE

http://ss64.com/nt/robocopy.html

1

Вы можете использовать пакетный файл для запуска команды Xcopy с помощью команды verify , после чего следует проверка уровня ошибок, возвращаемого Xcopy, чтобы определить, успешно скопированы файлы или нет. Если они сделали, удалите источник.

Из документации Xcopy:

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

Пример партии:

Rem Attempt file copy...
xcopy /D /V %1 %2

Rem Check result code and if it was successful (0), delete the source.
if errorlevel 0 (
    echo Copy completed successfully
    del /Q %1
    exit /B
)

Rem Not Errorlevel 0...
echo Copy failed for some reason.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .