3

Я знаю, что команда copy имеет возможность автоматически заменить файл, если он уже существует, но я хочу знать, если это способ копирования файлов, только если они еще не существуют (/Y). Я не знаю фактических имен файлов в пакетном коде, так как я копирую из источника, используя подстановочные знаки в команде копирования:

copy *.zip c:\destination

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

Дополнительная информация:
Это пакетное задание, которое запускает функцию резервного копирования для копирования zip-файлов с моего компьютера на общий сервер, и в случае, если пакетное задание по какой-то причине не завершилось (скопированы только некоторые zip-файлы), мне нужно запустить снова, но только для тех почтовых файлов, которые не были скопированы ранее.

4 ответа4

4

Эта команда решила это для меня:

XCOPY *.ZIP /D C:\DESTINATION
2
echo n|xcopy "[source]" "[destinaton]" 

Ознакомьтесь с различными аргументами для xcopy, чтобы адаптировать их для вашего конкретного использования

1

Robocopy - автоматически пропускает файлы уже в месте назначения

ROBOCOPY \some \folder c:\destination * .zip /S

0

Проблема решается с помощью robocopy и с помощью параметра /M копировать только файлы с установленным флагом архива, а затем очищать его.

robocopy /M *.zip c:\destination

В этой статье в Википедии вы увидите, что это на самом деле очень похоже на то, для чего предназначен флаг архива.

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