Robocopy - Сравнить даты изменения файлов? - PullRequest
2 голосов
/ 20 мая 2010

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

Так что мне интересно, кто-нибудь знает, можно ли это сделать с помощью Robocopy?

Ответы [ 2 ]

6 голосов
/ 20 мая 2010

ROBOCOPY %SOURCE_DIR% %TARGET_DIR% * /MIR

CORRECTION

ROBOCOPY %SOURCE_DIR% %TARGET_DIR% * /MIR /XO

2 голосов
/ 20 мая 2010

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

Синтаксис RoboCopy немного странный, поэтому вы можете прочитать больше здесь .

Вы, вероятно, хотите что-то вроде этого:

RoboCopy.exe %sourceDir% %targetDir%\ *.* /xo

%sourceDir% - ваш исходный каталог

%targetDir% - ваш целевой каталог

*.* - файлы в исходном каталоге для копирования

/xo - исключить файл, если место назначения уже существует и является более новым.

[Изменить в ответ на комментарий]

Если вы говорите, что хотите удалить файлы из целевого каталога, которых больше нет в исходном каталоге, то я считаю, что переключатель /purge делает это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...