Robocopy примеры использования

Robocopy (Robust File Copy) утилита командной строки, которая идет с Windows Vista и более новыми версиями Windows. В старых версиях Windows она была частью Windows Resource Kit Tools. В отличие от обычной команды copy, Robocopy создана для более надежного копирования и зеркалирования. С подержкой резрешений, атрибутов, информации о пользователе, таймштампав копируемых объектов.

Синтаксис Robocopy :

robocopy source destination [file…] [options]
  • source - директория откуда будем копировать. Может быть сетевым путем.
  • destination - директория куда копируем. Локальный или сетевой путь.
  • [file…] - файлы которые нужно скопировать. Можно использоваться wildcard символы (* или ?). Если параметр [file…] не задан, то по умолчанию используется *.*

Примеры использования команды Robocopy

robocopy c:\src c:\dst *.txt

В этом примере будут копироваться все файлы .txt из директории c:\src в директорию c:\dst.

robocopy c:\src c:\dst /e

Копировать все файлы, включая пустые.

robocopy c:\src c:\dst /MIR

Сделает зеркало. Использовать с осторожностью т.к. из c:\dst будут удалены все файлы которых нет в c:\src

robocopy robocopy \\computer\src c:\dst 

Источник файлов на другом компьютере в сети.

Описание всех опций и параметров

Robocopy опции копирования

Опция

Описание

/s Копировать поддиректории. Пустые директории пропускаются.
/e Копировать поддиректории, включая пустые.
/lev:<N> Копировать только верхние N уровней дерева директорий.
/z Копировать файлы в режиме рестарта.
/b Копировать файлы в Backup режиме.
/zb Используется режим рестарта. Если доступ запрещен, то используется Backup режим.
/efsraw

Копировать зашифрованные файлы в EFS RAW режиме.

/copy:<CopyFlags>

Указать какие свойства файлов будут копироваться. Правильные варианты для данной опции :

  • D Data
  • A Attributes
  • T Time stamps
  • S NTFS access control list (ACL)
  • O Owner information
  • U Auditing information

Значение по умолчанию DAT (data, attributes, and time stamps).

/dcopy:T Копировать таймштампы директории.
/sec Копировать файлы с security (эквивалент /copy:DAT).
/copyall Копировать всю информацию по файлам (эквивалент /copy:DATSOU).
/nocopy Не копировать информацию по файлам (полезно с опцией /purge).
/secfix Фиксировать security на всех файлах, даже пропущенных.
/timfix Фиксировать время на всех файлах, даже пропущенных.
/purge Удалить файлы в папке назначения, которых больше нет в исходной папке.
/mir Зеркалировать дерево директорий (эквивалентно двум опциям /e вместе с /purge).
/mov Переместить файлы. Т.е. после копирования будут удалены исходные.
/move Переместить файлы и директории. Исходники будут удалены.
/a+:[RASHCNET] Добавить атрибуты к скопированным файлам. Adds the specified attributes to copied files.
/a-:[RASHCNET] Удалить атрибуты у скопированных файлов.
/create Создать дерево директории и файлы с нулевым размером.
/fat Создавать файлы с именами в формате 8.3 как в FAT.
/256 Отключить поддержку очень длинных путей (которые больше 256 символов).
/mon:<N> Мониторит исходную папку и если обнаружит больше чем N изменений то начнёт копирование изменённых файлов. Подробнее читайте тут : планировщик в Robocopy.
/mot:<M> Мониторит исходную папку, ищет изменения каждые M минут и начинает копировать если были изменения. Подробнее читайте тут : планировщик в Robocopy.
/rh:hhmm-hhmm Указывает время когда начнется выполнение запланированного копирования. Подробнее читайте тут : планировщик в Robocopy.
/pf Checks run times on a per-file (not per-pass) basis.
/ipg:n Specifies the inter-packet gap to free bandwidth on slow lines.
/sl Копировать символические ссылки, вместо реального файла.
 Важное

Когда используете опцию /SECFIX, вам также нужно выбрать одну из этих :

  • /COPYALL
  • /COPY:O
  • /COPY:S
  • /COPY:U
  • /SEC

Опции выбора файлов

Option

Description

/a Копировать только те файлы у которых есть атрибут архива.
/m Копировать только те файлы у которых есть атрибут архива, и после этого сбросить этот атрибут.
/ia:[RASHCNETO] Копировать только те файлы у которых есть указанные атрибуты.
/xa:[RASHCNETO] Не копировать те файлы у которых есть указанные атрибуты.
/xf <FileName>[ ...]

Не копировать те файлы у которых имя или путь похожи на заданный. В имени файла можно использовать "*" и "?".

/xd <Directory>[ ...] Не копировать те директории у которых имя или путь похожи на заданный. В имени директории можно использовать "*" и "?".
/xct Не копировать изменённые файлы.
/xn Не копировать новые файлы.
/xo Не копировать старые файлы.
/xx Не копировать те файлы и папки которые уже есть в папке назначения.
/xl Excludes "lonely" files and directories.
/is Includes the same files.
/it Includes "tweaked" files.
/max:<N> Не копировать файлы у которых размер больше чем N байт.
/min:<N> Не копировать файлы у которых размер меньше чем N байт.
/maxage:<N> Не копировать файлы которые старее N дней.
/minage:<N> Минимальный возраст файлов N дней.
/maxlad:<N> Не копировать те файлы которые не использовались начиная с даты N.
/minlad:<N> Копировать файлы которые использовались до определённой даты. Если N меньше чем 1900, тогда это дни. Иначе это год в формате YYYYMMDD.
/xj Не копировать junction points. По умолчанию они копируются.
/fft Assumes FAT file times (two-second precision).
/dst Compensates for one-hour DST time differences.
/xjd Не копировать junction points для директорий.
/xjf Не копировать junction points для файлов.

Опции повторов

Option

Description

/r:<N> Количество повторов если копирование не удаётся. По дефолту это 1,000,000 попыток.
/w:<N>

Время между повторами в секундах. По дефолту 30 секунд.

/reg Сохраняет в реестр значения опций /r и /w как дефолтовые.
/tbd Specifies that the system will wait for share names to be defined (retry error 67).

Опции логов

Option

Description

/l Покажет список файлов которые выбраны для обработки, но само копирование, удаление и т.п. не будет выполняться.
/x Сообщает все дополнительные файлы, а не только те, которые выбраны.
/v Болтливый режим. Покажет также пропущенные файлы.
/ts

Покажет таймстампы файлов.

/fp Показывать полные пути к файлам.
/bytes Показывать размер файлов в байтах.
/ns Указывает, что размеры файлов не логируются.
/nc Указывает, что классы файлов не должны логироваться.
/nfl Имена файлов не будут логироваться.
/ndl Имена директори не будут логироваться.
/np Не будет показываться прогресс копирования. Т.е. количество файлов и директорий.
/eta Показывает примерное время прибытия копированных файлов.
/log:<LogFile> Логировать в файл. Если такой файл логов уже есть, то он будет перезаписан.
/log+:<LogFile> Логировать в файл. Если такой файл логов уже есть, то данные будут добавлены в него.
/unicode Отображать статус в юникоде.
/unilog:<LogFile> Логировать в файл в формате Unicode. Если такой файл логов уже есть, то он будет перезаписан.
/unilog+:<LogFile> Логировать в файл в формате Unicode. Если такой файл логов уже есть, то данные будут добавлены в него.
/tee Логировать и в файл и в консоль.
/njh Указывает, что нет заголовка задания.
/njs Указывает, что нет резюме работы.

Опции заданий

Option

Description

/job:<JobName> Указывает, что параметры должны быть выведены из именованного файла задания.
/save:<JobName> Указывает, что параметры должны быть сохранены в именованный файл задания.
/quit Выйти после обработки командной строки ( чтобы посмотреть параметры )./nosd:
/nodd Указывает, что каталог назначения не указан.
/if Включает указанные файлы.

Читайте также

robocopy
Поставь мне пожалуйста лайк :)