Параметры работы и мониторинга в RoboCopy

21

Что делают параметры работы RoboCopy? А что именно делает /MONи /MOTпереключатели делать? Как я могу их использовать? Я их не понимаю и не могу найти примеров того, как их использовать.

  • / MON: n - источник MONitor; запустите снова, когда увидено более n изменений.
  • / MOT: m - источник Mnitor; запустить снова через м минут. Время, если изменилось.

Означает ли это, что сначала он будет запущен один раз, а затем продолжит работу после его завершения и снова запустится, если изменение произойдет где-то внизу в файловой структуре или когда что-то изменилось и прошло время?

  • / JOB: jobname - взять параметры из названного файла JOB.
  • / SAVE: jobname - СОХРАНИТЬ параметры в названном файле проекта
  • / QUIT - QUIT после обработки командной строки (для просмотра параметров).
  • / NOSD - НЕТ Исходный каталог указан.
  • / NODD - каталог назначения не указан.
  • / IF - Включить следующие файлы.

Что такое файл работы? Для чего /NOSDи /NODDпереключатели?

Svish
источник
Хорошие вопросы И пока я не увидел ваши теги, я не понял, что robocopy - это часть windows 7. :-)
Chris_K
Благодарность! Думаю, что это тоже часть Vista, но я использую Windows 7, так что добавлю это. Я совсем не знал об этом инструменте пару дней назад: D
Свиш,
1
Robocopy был включен в стандарт с Windows Vista и Windows Server 2008. До этого он был общедоступен начиная с версии 1.7 как инструмент в комплектах ресурсов Windows с 3.51 (а до этого он был известен сотрудникам MS как «что потрясающая утилита копирования, которую Кевин написал ... ")
Джессика Маккиннон

Ответы:

6

Означает ли это, что сначала он будет запущен один раз, а затем продолжит работу после его завершения и снова запустится, если изменение произойдет где-то внизу в файловой структуре или когда что-то изменилось и прошло время?

Да. / MON подсчитывает количество измененных файлов; / ТО считает время.

Я боялся когда-либо пробовать эти варианты, так как в документах говорится, как НАЧАТЬ эти задания, а не как ОСТАНОВИТЬ их. Насколько я знаю, они могут стать невидимыми, неудержимыми запланированными заданиями.

Эта страница указывает на то, что она выполняется до тех пор, пока вы не прервете запущенное задание, например, с помощью control-C.

(Добавлен как ответ, а не как комментарий, потому что StackExchange не позволяет мне писать комментарии без 50 репутации, и у меня 1 репутация через 3 года.)

Фил Гетц
источник
6

Лучше всего объяснить на примере:

Вот тривиальный файл задания, назовите его 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 и MOT, но подозреваю, что Шуфлер понял их правильно. Попробуйте и дайте нам знать!
Рэнди Оррисон
пс. больше информации на эту тему здесь: detroitdavesraves.blogspot.co.uk/2011/08/…
JohnLBevan
5

/MONсканирует источник и копирует при обнаружении изменений. /MOTперезапускается снова через n минут и копирует все обнаруженные изменения

/JOB позволяет вам указать опции в текстовом файле, если у вас есть много опций (например, исключения).

Жаль , что я знал , что /NOSDи /NODDсделал так , как я никогда не имел оснований для их использования.

shufler
источник
Не могли бы вы создать пример использования этого параметра / JOB? Я не могу заставить его работать ...
Свиш
Файл / job содержит список ключей (по одному на строку) и их параметры. Вы также можете использовать ключ / save для вывода файла задания (.rcj) для дальнейшего использования
shufler
/ MOT перезапускается каждые n минут, только если там, где есть изменения (см. Руководство: «Отслеживает источник и снова запускается через M минут, если обнаружены изменения»)
ndemou
3

От: 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, особенно для тех, кто отслеживает занятые деревья.

Бакли
источник
Хм, тогда его можно использовать для обнаружения переименований и перемещений. Но когда он обнаруживает такое изменение в дереве, копирует ли он файл в новое имя / местоположение и удаляет ли он из старого (таким образом выполняя ненужные записи), или он может переименовывать / перемещать его?
Synetech
Chrome помечает этот файл как вредоносное ПО!
Aardvark
1

В качестве примера я использую этот /MOTпереключатель, чтобы поддерживать файловую систему DR в актуальном состоянии с копией каждые 10 минут. Я запускаю robocopy в 12:00 с запланированной задачей, и она выполняется весь день, копируя любые изменения каждые 10 минут. Запланированное задание будет остановлено через 23 часа 55 минут, а затем на следующий день в 12 часов снова запускается робокопия.

Несмотря на то, что robocopy указывает количество изменений в ожидании истечения 10-минутного периода, он все равно сканирует всю структуру исходных папок, на которую вы указали. Поэтому лучше всего сузить структуру исходного кода с помощью нескольких исключений для папок ( /XD <folder>), если вы можете.

Майк
источник
Хотите поделиться своим сценарием?
Свиш
0

Еще один простой способ сделать это - просто использовать ключ / MIR и запланировать файл bat, чтобы запускать его снова и снова. Изменения будут сделаны только на стороне источника. Вы должны запустить полную копию в первую очередь.

Проверьте файл журнала, вы увидите результаты. также используйте ключ / MT для многопоточности. Сделайте копию быстрее.

Корневая петля
источник
0

Как использовать файлы заданий

Файлы заданий используются для сохранения и повторного использования (обычно) длинных командных строк 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).

ndemou
источник
-1

Проверьте документацию в Technet .

Джон Гарденье
источник
1
Документация там не говорит ничего более того, что я изложил в своем ответе там. По крайней мере, насколько я могу видеть ...
Свиш
Я понимаю, что вы имеете в виду, извините. Документация была намного лучше, прежде чем она стала «официальным» продуктом.
Джон Гарденерс