robocopy
Копирует данные файлов из одного расположения в другое.
Синтаксис
robocopy <source> <destination> [<file>[ ...]] [<options>]
Например, чтобы скопировать файл с именем yearly-report.mov из c:\reports в общую папку \\marketing\видео при включении нескольких потоков для повышения производительности (с параметром /mt ) и возможность перезапуска передачи в случае прерывания (с параметром /z ) введите:
robocopy c:\reports "\\marketing\videos" yearly-report.mov /mt /z
Внимание
Если какие-либо данные копируются из корневого каталога устройства, целевой каталог будет принимать скрытый атрибут во время процесса копирования.
Параметры
Параметр | Описание |
---|---|
<source> |
Указание пути к исходному каталогу. |
<destination> |
Указание пути к целевому каталогу. |
<file> |
Указывает файл или файлы, которые нужно скопировать. Поддерживаются подстановочные знаки (* или ?). Если этот параметр не указан, *.* используется в качестве значения по умолчанию. |
<options> |
Задает параметры, используемые с командой robocopy, включая копирование, файл, повторные попытки, ведение журнала и параметры задания. |
Параметры копирования
Вариант | Описание |
---|---|
/s | Копирует вложенные каталоги. Этот параметр автоматически исключает пустые каталоги. |
/e | Копирует вложенные каталоги. Этот параметр автоматически включает пустые каталоги. |
/лев:<n> |
Копирует только верхние n уровни исходного дерева каталогов. |
/z | Копирует файлы в режиме перезапуска. В режиме перезапуска следует прервать копию файла, robocopy может выбрать место, в котором оно осталось, а не повторно скопировать весь файл. |
/b | Копирует файлы в режиме резервного копирования. В режиме резервного копирования robocopy переопределяет параметры разрешений файлов и папок (ACL), которые в противном случае могут блокировать доступ. |
/zb | Копирует файлы в режиме перезапуска. Если доступ к файлам запрещен, переключится в режим резервного копирования. |
/j | Копирует данные с помощью небуферированных операций ввода-вывода (рекомендуется для больших файлов). |
/efsraw | Копирует все зашифрованные файлы в режиме RAW EFS. |
/копировать:<copyflags> |
Указывает, какие свойства файла следует копировать. Допустимые значения этого параметра:
|
/dcopy:<copyflags> |
Указывает, что нужно скопировать в каталоги. Допустимые значения этого параметра:
|
/sec | Копирует файлы с безопасностью (эквивалентно /copy:DATS). |
/copyall | Копирует все сведения о файле (эквивалентно /copy:DATSOU). |
/nocopy | Не копирует сведения о файле (полезно с /purge). |
/secfix | Исправляет безопасность файлов во всех файлах, даже пропущенных. |
/timfix | Исправляет время файлов во всех файлах, даже пропущенных. |
/чистка | Удаляет конечные файлы и каталоги, которые больше не существуют в источнике. Использование этого параметра с параметром /e и конечным каталогом позволяет не перезаписывать параметры безопасности целевого каталога. |
/Мир | Зеркально отражает дерево каталога (эквивалентно /e плюс /purge). Используя этот параметр с параметром /e и каталогом назначения, перезаписывает параметры безопасности целевого каталога. |
/mov | Перемещает файлы и удаляет их из источника после их копирования. |
/двигаться | Перемещает файлы и каталоги и удаляет их из источника после их копирования. |
/a+:[RASHCNET] | Добавляет указанные атрибуты в скопированные файлы. Допустимые значения этого параметра:
|
/a-:[RASHCNETO] | Удаляет указанные атрибуты из скопированных файлов. Допустимые значения этого параметра:
|
/создавать | Создает только дерево каталогов и файлы нулевой длины. |
/жир | Создает целевые файлы, используя только имена ФАЙЛОВ FAT длиной 8.3. |
/256 | Отключает поддержку путей дольше 256 символов. |
/пн:<n> |
Отслеживает источник и выполняется снова при обнаружении более n изменений. |
/острота:<m> |
Отслеживает источник и выполняется снова в минутах, если обнаружены изменения. |
/rh:hhmm-hhmm | Указывает время выполнения при запуске новых копий. |
/pf | Проверяет время выполнения на основе каждого файла (не для каждого прохода). |
/ipg:<n> |
Указывает интервал между пакетами для освобождения пропускной способности в медленных строках. |
/sj | Копирует соединения (обратимые ссылки) на конечный путь вместо целевых объектов связи. |
/sl | Не следуйте символьным ссылкам и вместо этого создайте копию ссылки. |
/мт:<n> |
Создает многопоточных копий с n потоками. n должно быть целым числом от 1 до 128. Значение по умолчанию для n равно 8. Для повышения производительности перенаправьте выходные данные с помощью параметра /log . Параметр /mt нельзя использовать с параметрами /ipg и /efsraw . |
/nodcopy | Копирует сведения о каталоге (выполняется по умолчанию /dcopy:DA ). |
/nooffload | Копирует файлы без использования механизма разгрузки копирования Windows. |
/компресс | Запрашивает сжатие сети во время передачи файлов, если применимо. |
/редкий:<y|n> |
Включает или отключает сохранение разреженного состояния файлов во время процесса копирования. Если параметр не выбран, он по умолчанию имеет значение "да " (включено). |
/noclone | Не пытается клонирование блоков в качестве оптимизации. |
Внимание
При использовании параметра копирования /secfix укажите тип сведений о безопасности, которые требуется скопировать, используя один из следующих дополнительных параметров копирования:
- /copyall
- /copy:o
- /copy:s
- /copy:u
- /sec
Примечание.
Параметр /mt появился в Windows Server 2008 R2 и его функциональные возможности применяются к текущим версиям Windows Server.
Копирование параметров регулирования файлов
Вариант | Описание |
---|---|
/iomaxsize:<n> [kmg] |
Запрошенный максимальный размер операций ввода-вывода на цикл чтения и записи в n kмотбайтах, megabytes или gigabytes. |
/iorate:<n> [kmg] |
Запрошенная скорость ввода-вывода в n k мбegabytes или gigabytes в секунду. |
/порог:<n> [kmg] |
Пороговое значение размера файла для регулирования в n kмотбайтах, megabytes или gigabytes (см . примечания). |
Эти параметры регулирования используются для указания максимальной пропускной способности ввода-вывода, которую Robocopy позволяет использовать в байтах в секунду. Если не указывать в байтах в секунду, можно использовать целые числа, если указаны k, m или g . Минимальная пропускная способность ввода-вывода, которая регулируется, 524288 байт, даже если указано меньшее значение.
Параметры выбора файла
Вариант | Описание |
---|---|
/a | Копирует только файлы, для которых задан атрибут Archive . |
/m | Копирует только файлы, для которых задан атрибут Archive , и сбрасывает атрибут Archive . |
/ia:[RASHCNETO] |
Включает только файлы, для которых заданы любые из указанных атрибутов. Допустимые значения этого параметра:
|
/xa:[RASHCNETO] |
Исключает файлы, для которых заданы какие-либо из указанных атрибутов. Допустимые значения этого параметра:
|
/xf <filename>[ ...] |
Исключает файлы, соответствующие указанным именам или путям. Поддерживаются подстановочные знаки (* и ?). |
/xd <directory>[ ...] |
Исключает каталоги, соответствующие указанным именам и путям. |
/xc | Исключает существующие файлы с одной меткой времени, но с разными размерами файлов. |
/xn | Исходные файлы каталогов, более новые, чем назначение, исключаются из копии. |
/xo | Исходные файлы каталогов старше назначения исключаются из копии. |
/xx | Исключает дополнительные файлы и каталоги, присутствующих в назначении, но не источник. Исключение дополнительных файлов не приведет к удалению файлов из назначения. |
/xl | Исключает "одинокие" файлы и каталоги, присутствующих в источнике, но не в назначении. Исключение одиноких файлов предотвращает добавление новых файлов в место назначения. |
/im | Включите измененные файлы (различающееся время изменения). |
/is | Включает одни и те же файлы. Одни и те же файлы совпадают с именем, размером, временем и всеми атрибутами. |
/оно | Включает файлы с настройкой. Файлы с настройкой имеют одинаковое имя, размер и время, но разные атрибуты. |
/Макс:<n> |
Задает максимальный размер файла (чтобы исключить файлы, превышающие n байт). |
/Мин:<n> |
Указывает минимальный размер файла (чтобы исключить файлы меньше n байт). |
/maxage:<n> |
Указывает максимальный возраст файла (для исключения файлов старше n дней или даты). |
/minage:<n> |
Указывает минимальный возраст файла (исключите файлы более n дней или даты). |
/maxlad:<n> |
Указывает максимальную дату последнего доступа (исключает файлы, неиспользуемые с n). |
/minlad:<n> |
Указывает минимальную дату последнего доступа (исключает файлы, используемые с n) Если n меньше 1900, n указывает количество дней. В противном случае n указывает дату в формате YYYYMMDD. |
/xj | Исключает точки соединения, которые обычно включаются по умолчанию. |
/fft | Предположение времени файла FAT (двухсекундная точность). |
/dst | Компенсирует различия времени DST за один час. |
/xjd | Исключает точки соединения для каталогов. |
/xjf | Исключает точки соединения для файлов. |
Параметры повтора
Вариант | Описание |
---|---|
/r:<n> |
Указание количества повторных попыток для неудавшихся копий. Значение по умолчанию n равно 1000 000 (один миллион повторных попыток). |
/w:<n> |
Указание времени ожидания между повторными попытками в секундах. Значение по умолчанию n равно 30 (время ожидания 30 секунд). |
/reg | Сохраняет значения, указанные в параметрах /r и /w в качестве параметров по умолчанию в реестре. |
/tbd | Указывает, что система ожидает определения имен общих ресурсов (ошибка повтора 67). |
/lfsm | Работа в режиме низкого свободного места, включающее копирование, приостановку и возобновление (см . примечания). |
/lfsm:<n> [kmg] |
Задает размер пола в n kмотбайт, megabytes или gigabytes. |
Параметры ведения журнала
Вариант | Описание |
---|---|
/l | Указывает, что файлы должны быть перечислены только (и не копируются, удаляются или метки времени). |
/x | Сообщает все дополнительные файлы, а не только выбранные. |
/v | Создает подробные выходные данные и отображает все пропущенные файлы. |
/ts | Включает метки времени исходного файла в выходные данные. |
/fp | Содержит полные имена путей файлов в выходных данных. |
/bytes | Печатает размеры в виде байтов. |
/ns | Указывает, что размеры файлов не регистрируются. |
/nc | Указывает, что классы файлов не записываются в журнал. |
/nfl | Указывает, что имена файлов не регистрируются. |
/ndl | Указывает, что имена каталогов не регистрируются. |
/np | Указывает, что ход выполнения операции копирования (количество файлов или каталогов, скопированных до сих пор) не будет отображаться. |
/эта | Показывает предполагаемое время прибытия (ETA) скопированных файлов. |
/журнал:<logfile> |
Запись выходных данных о состоянии в файл журнала (перезапись существующего файла журнала). |
/log+:<logfile> |
Записывает выходные данные состояния в файл журнала (добавляет выходные данные в существующий файл журнала). |
/unilog:<logfile> |
Записывает выходные данные состояния в файл журнала в виде текста юникода (перезаписывает существующий файл журнала). |
/unilog+:<logfile> |
Записывает выходные данные состояния в файл журнала в виде текста Юникода (добавляет выходные данные в существующий файл журнала). |
/tee | Записывает выходные данные состояния в окно консоли и в файл журнала. |
/njh | Указывает, что заголовок задания отсутствует. |
/njs | Указывает, что сводка задания отсутствует. |
/unicode | Отображает выходные данные состояния в виде текста юникода. |
Параметры задания
Вариант | Описание |
---|---|
/работа:<jobname> |
Указывает, что параметры должны быть производными от именованного файла задания. Чтобы запустить /job:jobname , необходимо сначала запустить /save:jobname параметр для создания файла задания. |
/спасать:<jobname> |
Указывает, что параметры должны быть сохранены в именованный файл задания. Это необходимо выполнить перед выполнением /job:jobname . Перед этим параметром необходимо указать все параметры копирования, повтора и ведения журнала. |
/покидать | Завершает работу после обработки командной строки (для просмотра параметров). |
/nosd | Указывает, что исходный каталог не указан. |
/nodd | Указывает, что целевой каталог не указан. |
/если | Включает указанные файлы. |
Замечания
Использование /PURGE или /MIR в корневом каталоге тома ранее вызвало robocopy применить запрошенную операцию к файлам в каталоге System Volume Information. Это больше не так, как если бы то ни было указано, robocopy пропустит файлы или каталоги с таким именем в каталогах источника и назначения верхнего уровня сеанса копирования.
Измененная классификация файлов применяется только в том случае, если исходные и целевые файловые системы поддерживают метки времени изменения, такие как NTFS, и исходные и целевые файлы имеют разные времена изменения, но в противном случае одинаковы. Эти файлы по умолчанию не копируются. Укажите /IM , чтобы включить их.
Флаг /DCOPY:E запрашивает, что для каталогов следует попытаться скопировать расширенные атрибуты. Robocopy будет продолжаться, если не удалось скопировать EA каталога. Этот флаг не включен в /COPYALL.
Если задан параметр /IoMaxSize или /IoRate, robocopy позволит регулирование файлов копирования для уменьшения системной нагрузки. Оба параметра можно настроить в соответствии с оптимальными значениями и параметрами копирования, но система и robocopy могут настраивать их в соответствии с допустимыми значениями по мере необходимости.
Если используется значение /Threshold , он задает минимальный размер файла для привлечения регулирования. Файлы ниже этого размера не будут регулироваться. За значениями для всех трех параметров можно следовать необязательный символ суффикса, например [KMG] (килобайты, мегабайты, гигабайты).
Использование /LFSM запрашивает robocopy для работы в "режиме низкого свободного пространства". В этом режиме robocopy приостанавливается всякий раз, когда копия файла приведет к тому, что свободное пространство целевого тома будет переходить под значение "пол". Это значение можно явно указать с помощью флага /LFSM:n[KMG].
Если параметр /LFSM не указан с явным значением пола, то для пола задано значение 10 % от размера целевого тома. Режим низкого свободного места несовместим с /MT и /EFSRAW.
Коды выхода (return)
значение | Описание |
---|---|
0 | Файлы не были скопированы. Сбой не обнаружен. Файлы не совпадают. Файлы уже существуют в целевом каталоге; следовательно, операция копирования пропущена. |
1 | Все файлы были успешно скопированы. |
2 | В целевом каталоге есть несколько дополнительных файлов, которые отсутствуют в исходном каталоге. Файлы не были скопированы. |
3 | Некоторые файлы были скопированы. Были представлены дополнительные файлы. Сбой не обнаружен. |
5 | Некоторые файлы были скопированы. Некоторые файлы были несогласованы. Сбой не обнаружен. |
6 | Существуют дополнительные файлы и несогласованные файлы. Файлы не были скопированы, и не было обнаружено сбоев, что означает, что файлы уже существуют в целевом каталоге. |
7 | Файлы были скопированы, несогласование файлов присутствовало, и были представлены дополнительные файлы. |
8 | Несколько файлов не скопируются. |
Примечание.
Любое значение, равное или больше 8 , указывает, что во время операции копирования произошел по крайней мере один сбой.
Примеры
Настоятельно рекомендуется при выполнении robocopy
команды создать файл журнала, который можно просмотреть после завершения процесса проверки целостности. В следующих примерах каждый использует /LOG:
параметр. Чтобы добавить все сведения журнала в тот же файл журнала, используйте /LOG+:
этот параметр.
Чтобы скопировать все файлы и вложенные каталоги, включая пустые каталоги, из папки Records в папку Backup на диске D введите следующее:
robocopy C:\Users\Admin\Records D:\Backup /E /ZB /LOG:C:\Logs\Backup.log
Чтобы зеркальное отображение содержимого папки "Records" в папке "Backup" на диске "D", удалите все файлы в назначении, которые не существуют в источнике с 2 повторными попытками и ожиданием 5 секунд между каждой попыткой, введите следующее:
robocopy C:\Users\Admin\Records D:\Backup /MIR /R:2 /W:5 /LOG:C:\Logs\Backup.log
Чтобы скопировать все файлы и вложенные каталоги, которые не являются пустыми из папки Records, в папку Backup на диске D, сохраняя данные файла, атрибуты и метки времени с 16 многопотоковой операцией копирования, введите следующее:
robocopy C:\Users\Admin\Records D:\Backup /S /E /COPY:DAT /MT:16 /LOG:C:\Logs\Backup.log
Чтобы переместить файлы и вложенные каталоги, за исключением пустых каталогов, из папки Records в папку Backup на диске "D" и исключить файлы старше 7 дней, введите следующее:
robocopy C:\Users\Admin\Records D:\Backup /S /MAXAGE:7 /MOV /LOG:C:\Logs\Backup.log
Чтобы скопировать все файлы и вложенные каталоги, включая пустые каталоги, из папки "Записи" в папку "Backup" на диске "D" с предполагаемым временем для каждого файла и удаления всех файлов и каталогов в назначении, которые не существуют из источника, введите следующее:
robocopy C:\Users\Admin\Records D:\Backup /ETA /PURGE /LOG:C:\Logs\Backup.log
Чтобы скопировать все файлы и вложенные каталоги из папки с именем Records (Записи) на диске "C" в папку с именем Backup на диске "D" при ограничении скорости ввода-вывода до 1 мегабайта в секунду во время операции копирования введите следующее:
robocopy C:\Records D:\Backup /iorate:1m