Что делают варианты работы RoboCopy? И что именно делает /MON
и /MOT
переключатели делать? Как я могу их использовать? Я их не понимаю и не могу найти примеров, как их использовать.
- / МЕС: n - Источник MONitor; запустить снова, когда будет замечено более n изменений.
- / MOT: м - Источник МОНИТОР; запустить снова через m минут Время, если изменилось.
Означает ли это, что он сначала будет запущен один раз, а затем продолжит работу после завершения и запустится снова, если где-то в файловой структуре произойдет изменение или когда что-то изменилось и прошло время?
- / JOB: имя работы - взять параметры из названного файла JOB.
- / SAVE: имя задания - СОХРАНИТЬ параметры в указанный файл задания
- /УВОЛИТЬСЯ - ВЫЙТИ после обработки командной строки (для просмотра параметров).
- / NOSD - Исходный каталог не указан.
- / NODD - НЕТ Каталог назначения не указан.
- /ЕСЛИ - Включите следующие файлы.
Что такое файл вакансии? Что /NOSD
и /NODD
переключатели для?
Лучше всего объяснить на примере:
Вот тривиальный файл вакансии, назовите его sample.rcj
:
:: Source Directory :
/SD:C:\Documents and Settings\ :: Source Directory.
:: Destination Directory :
:: On command line
:: Copy options :
/E :: copy Subdirectories, including empty ones.
Он определяет параметры для копирования c:\Documents and Settings
каталог текущего компьютера в неуказанное место.
Вот как вы могли бы использовать его для копирования в место назначения, указанное в %DEST%
переменная среды, добавляющая ведение журнала в %LOG%
файл.
robocopy /nosd %DEST% /log+:%LOG% /job:sample
/NOSD
дается, потому что источник указан в файле задания.
Вы можете поиграть с созданием команды robocopy в командной строке, а затем, когда вы будете довольны, она делает то, что вы хотите, запустите ее снова с помощью /SAVE
чтобы сохранить параметры в файл.
/QUIT
анализирует параметры и будет жаловаться, если у вас что-то не так (недопустимые параметры, источник не существует), но на самом деле ничего не делает.
Я бы предположил, что /IF
позволит вам включить файл параметров в дополнение к самому заданию? (В моем примере я мог бы поставить /LOG
вариант в файле и включил его с /IF
.) Просто догадываюсь.
Означает ли это, что он сначала будет запущен один раз, а затем продолжит работу после завершения и запустится снова, если где-то в файловой структуре произойдет изменение или когда что-то изменилось и прошло время?
Да. / MON подсчитывает количество измененных файлов; / ТО считает время.
Я боялся когда-либо пробовать эти варианты, поскольку в документах говорится, как НАЧАТЬ эти задания, но не как их остановить. Насколько я знаю, они могут стать невидимыми, невыполнимыми запланированными задачами.
Эта страница указывает, что он выполняется, пока вы не прервете текущее задание, например, с помощью Ctrl-C.
(Добавлено как ответ, а не как комментарий, потому что StackExchange не позволяет мне писать комментарии без 50 репутации, а у меня 1 репутация через 3 года.)
/MON
сканирует источник и копирует при обнаружении изменений. /MOT
повторяется снова в п минут и копирует все обнаруженные изменения
/JOB
позволяет указать параметры в текстовом файле, если у вас много параметров (например, исключения).
Хотел бы я знать, что /NOSD
и /NODD
сделал так, как у меня никогда не было причин их использовать.
Из: http://www-pc.uni-regensburg.de/systemsw/tools/robocopy.doc
Мониторинг дерева каталогов Используя переключатели / MON: n и / MOT: m, вы можете отслеживать изменения в исходном дереве каталогов и копировать изменения по мере их возникновения. Ключ / MON: n указывает минимальное количество изменений, которые должны произойти перед повторным запуском. Ключ / MOT: m указывает минимальное время в минутах, которое должно пройти перед повторным запуском. Если вы укажете только один из этих переключателей, предполагается, что другой имеет значение 1.
Когда указан мониторинг, Robocopy никогда не завершается. Вместо этого он входит в цикл, который выполняет обычный проход Robocopy, а затем отслеживает изменения в дереве исходных каталогов, пока не будут обнаружены n изменений и не пройдет m минут. Когда оба условия соблюдены, запускается еще один проход Robocopy. Весь этот процесс копирования и мониторинга повторяется до бесконечности, пока пользователь вручную не завершит процесс Robocopy.
Как минимум, Robocopy контролирует дерево исходных каталогов на предмет изменений в именах файлов и каталогов, размерах и времени последней записи. Если атрибуты должны быть скопированы, Robocopy также будет отслеживать изменения атрибутов в дереве. Точно так же, если информация о безопасности должна быть скопирована, Robocopy также будет отслеживать дерево на предмет изменений безопасности.
Следовательно, пользователь, выполняющий редактирование и сохранение, например, одного нового файла, может привести к тому, что несколько изменений различных типов будут отправлены обратно в Robocopy. Поэтому могут потребоваться некоторые эксперименты, чтобы определить соответствующие пороговые значения для / MON и / MOT для каждого задания Robocopy, особенно для тех, которые отслеживают загруженные деревья.
В качестве примера я использую /MOT
переключитесь, чтобы поддерживать файловую систему аварийного восстановления в актуальном состоянии с копией каждые 10 минут. Я запускаю robocopy в 12 часов утра с запланированной задачей, и он работает весь день, копируя любые изменения каждые 10 минут. Запланированная задача настроена на остановку после 23:55, а затем robocopy снова запускается задачей следующего дня в 12:00.
Хотя robocopy указывает количество изменений, ожидая истечения 10-минутного периода, он по-прежнему сканирует всю структуру исходных папок, на которую вы указали. Так что лучше всего сузить исходную структуру несколькими исключениями для папок (/XD <folder>
) если вы можете.
Файлы заданий используются для сохранения и повторного использования (обычно) длинных командных строк robocopy.
Создание файла задания Robocopy
ROBOCOPY C:\SRC C:\DST ...other.robocopy.options... /SAVE:TEST /QUIT
Это создаст файл задания Robocopy с именем TEST.RCJ со всеми указанными вами параметрами Robocopy. перед переключатель / SAVE, а затем завершает работу без фактического копирования.
Чтобы использовать один или несколько файлов заданий
ROBOCOPY /JOB:TEST /JOB:JOBFILE2 ...other.options...
Для просмотра или редактирования файла проекта
Просто откройте его в текстовом редакторе. Формат не требует пояснений.
Для проверки файлов заданий
Если вы хотите протестировать свои правки или объединяете несколько файлов заданий и хотите знать, каков окончательный результат, запустите это:
ROBOCOPY /JOB:JOBFILE1 /JOB:JOBFILE2 /QUIT
Создание файлов заданий без каталога источника / назначения
В этом случае используйте следующий синтаксис:
ROBOCOPY /NOSD /NODD ...options... /SAVE:TEST /QUIT
Очевидно, / NOSD и / NODD означают NO Source Dir и NO Destination Dir.
Вы также должны использовать эти переключатели при запуске файлов заданий, которые определяют либо источник, либо место назначения, потому что robocopy будет жаловаться, если вы снова введете его в командной строке.
Вы правильно поняли руководство. Robocopy продолжает обнаруживать и реагировать на любые изменения, пока вы не отмените его (например, с помощью Ctrl-C).
Другой простой способ сделать это - просто использовать переключатель / MIR и запланировать запуск файла bat, чтобы он запускался снова и снова. Изменения будут внесены только на стороне источника. Сначала вам нужно запустить полную копию.
Проверьте файл журнала, и вы увидите результаты. также используйте переключатель / MT для многопоточности. Сделайте копию быстрее.
Проверьте документацию в Технет.