Robocopy описание на русском
Я уже писал об этой маленькой и замечательной программе для резервного копирования файлов как по сети, так и с диска на диска.
Часто нужно вспомнить значение какого-либо ключа, а на русском это быстрее и понятнее, да и этот хэлп robocopy на русском пригодится тем кто не владеет английским языком.
------------------------------------------------------------------------------- ROBOCOPY :: Robust File Copy for Windows ------------------------------------------------------------------------------- Начало: Tue Sep 06 00:44:31 2011 Применение:: ROBOCOPY источник назначение [файл [файл]...] [Параметры] Источник:: Исходная папка (диск:\путь или \\сервер\общий ресурс\путь). Назначение :: Конечная папка (диск:\путь или \\сервер\общий ресурс\путь). Файл :: Копировать файлы (имена и подстановочные знаки: по умолчанию "*.*"). :: :: Параметры копирования: :: /S :: Копировать вложенные папки, кроме пустых. /E :: Копировать вложенные папки, включая пустые. /LEV:n :: Копировать только верхние n уровней исходного дерева папок. /Z :: Копирование файлов с возобновлением. /B :: Копирование файлов в режиме архивирования. /ZB :: используется режим с возобновлением; если доступ запрещен, используется режим архивации. /EFSRAW :: Копирование всех зашифрованных файлов в режиме EFS RAW. /COPY:флаги копирования :: что копируется для файлов (по умолчанию /COPY:DAT). (флаги копирования: D=Данные, A=Атрибуты, T=Метки времени). (S=Безопасность=NTFS ACLs, O=Сведения о владельце, U=Сведения аудита). /DCOPY:T :: Копирование меток времени папки. /SEC :: Копировать файлы с параметрами безопасности (эквивалентно /COPY:DATS). /COPYALL :: Копировать все сведения о файле (эквивалентно /COPY:DATSOU). /NOCOPY :: Не копировать никаких сведений о файле (удобно использовать с параметром /PURGE). /SECFIX :: Исправлять параметры безопасности для всех файлов, даже пропущенных. /TIMFIX :: Исправлять атрибуты времени для всех файлов, даже пропущенных. /PURGE :: Удалять файлы и папки назначения, которых больше не существует в источнике. /MIR :: Создать зеркало дерева папок (эквивалентно /E с /PURGE). /MOV :: Перемещать файлы (удаление из источника после копирования). /MOVE :: Перемещать файлы и папки (удаление из источника после копирования). /A+:[RASHCNET] :: Добавлять заданные атрибуты скопированным файлам. /A-:[RASHCNET] :: Удалять заданные атрибуты из скопированных файлов. /CREATE :: Создать только дерево папок и файлы нулевой длины. /FAT :: Создать файлы назначения только в формате 8.3 FAT. /256 :: Отключить поддержку длинных путей ( > 256 знаков). /MON:n :: Наблюдать за источником; перезапустить после n изменений. /MOT:m :: Наблюдать за источником; перезапустить через m минут, если произошли изменения. /RH:hhmm-hhmm :: Часы запуска - время, когда можно запускать новое копирование. /PF :: Проверять часы запуска по файлам (не по проходам). /IPG:n :: Интервал между пакетами (мс) для снижения нагрузки на сеть при низкоскоростных подключениях. /SL:: копирование самих символических ссылок вместо копирования целевого объекта этих ссылок. :: :: Параметры выбора файлов: :: /A :: Копировать только файлы с установленным атрибутом "Архивный". /M :: Копировать только файлы с атрибутом "Архивный" и сбросить его. /IA:[RASHCNETO] :: Включить файлы, у которых установлен какой-либо из заданных атрибутов. /XA:[RASHCNETO] :: Исключить файлы, у которых установлен какой-либо из заданных атрибутов. /XF file [файл]... :: Исключить файлы, соответствующие заданным именам, путям и подстановочным знакам. /XD dirs [папки]... :: Исключить папки, соответствующие заданным именам и путям. /XC :: Исключить измененные файлы. /XN :: Исключить более поздние файлы. /XO :: Исключить более ранние файлы. /XX :: Исключить дополнительные файлы и папки. /XL :: исключить отдельно расположенные файлы и папки. /IS :: Включить те же файлы. /IT :: Включить оптимизированные файлы. /MAX:n :: Максимальный размер файла - исключить файлы, размер которых более n байт. /MIN:n :: Минимальный размер файла - исключить файлы, размер которых менее n байт. /MAXAGE:n :: Максимальный возраст файла - исключить файлы, возраст которых превышает n дней. /MINAGE:n :: Минимальный возраст файла - исключить файлы, возраст которых менее n дней. /MAXLAD:n :: Наиболее поздняя дата последнего обращения - исключить файлы, которые не использовались с даты n. /MINLAD:n :: Наиболее ранняя дата последнего обращения - исключить файлы, которые использовались после даты n. (Если n < 1900, то n = n дней, в противном случае n - дата в формате ДДММГГГГ). /XJ :: исключить точки соединения. (по умолчанию обычно включаются). /FFT :: Использовать время файлов FAT (двухсекундная точность). /DST :: Учитывать одночасовую разницу при переходе на летнее время. /XJD :: Исключить точки соединения для папок. /XJF :: Исключить точки соединения для файлов. :: :: Параметры повторных попыток: :: /R:n :: число повторных попыток для неудавшихся копий: по умолчанию - 1 миллион. /W:n :: Время ожидания между повторными попытками: по умолчанию - 30 секунд. /REG :: Сохранить /R:n и /W:n в реестре как параметры по умолчанию. /TBD :: Ждать, пока будут определены имена общих ресурсов (ошибка повторной попытки 67). :: :: Параметры ведения журнала: :: /L :: Только список - файлы не копируются, не удаляются, не помечаются метками времени. /X :: Сообщать обо всех дополнительных файлах, а не только о выбраных. /V :: Подробный вывод с указанием пропущенных файлов. /TS :: Включать в вывод метки времени исходных файлов. /FP :: Включать в вывод полные пути файлов. /BYTES :: Печатать размеры в байтах. /NS :: Без размера - не заносить в журнал размер файлов. /NC :: Без класса - не заносить в журнал классы файлов. /NFL :: Без списка файлов - не заносить в журнал имена файлов. /NDL :: Без списка папок - не заносить в журнал имена папок. /NP :: Без хода процесса - не отображать число скопированных % . /ETA :: Показывать оценку времени окончания копирования файлов. /LOG:файл :: Записывать состояние в файл журнала (перезаписывать существующий журнал). /LOG+:файл :: Записывать состояние в файл журнала (добавлять к существующему журналу). /UNILOG:файл :: Записывать состояние в файл журнала в формате Юникод (перезаписывать существующий журнал). /UNILOG+:файл :: Записывать состояние в файл журнала в формате Юникод (добавлять к существующему журналу). /TEE :: Направлять выходные данные в окно консоли и в файл журнала. /NJH :: Без заголовка задания. /NJS :: Без сведений о задании. /UNICODE :: Cостояние вывода в формате Юникод. :: :: Параметры задания: :: /JOB:имя_задания :: Взять параметры из указанного файла задания. /SAVE:имя_задания :: Сохранить параметры в указанный файл задания /QUIT :: Выйти после обработки командной строки (для просмотра параметров). /NOSD :: Не указывается исходная папка. /NODD :: Не указывается папка назначения. /IF :: Включить следующие файлы. |
Пример использования робокопи с скрипте копирования
echo Start backup time: %DATE% %TIME% >> g:\BC\backup_time.txt robocopy.exe S:\ g:\BC\MK\ /MIR /R:1 /W:1 /NP /TEE /LOG:g:\BC\00_sync.log echo End backup time: %DATE% %TIME% >> g:\BC\backup_time.txt |
С русским мануалом robocopy выше приведенный пример расшифровать будет легко и просто, кстати начиная с Windows Vista Robocopy идет в комплекте с операционной системой и уже на русском. Молодцы Микрософт, не забывают о таких небольших и полезных инструментах.
Фразы: перевод хелпа robocopy, русский Robocopy, пример работы robocopy, чем копировать файлы в командной строке windows с прогресс баром?
если ли у robocopy возможность отправлять по почте результаты работы?
насколько я знаю — нет, но ведь для этого можно использовать что-нибудь типа этого Отправка писем из командной строки Windows используя аккаунт GMail, ведь как правило «левые» письма будут попадать в спам или вообще отвергаться, а так это уже надежное письмо
пока единственный мной найденный минус — программа игнорирует ключик /MOV, если файл в источнике полностью соответствует файлу в назначении. особенно обидно то, что если в назначении файла нет, /MOV его именно переносит. хелп комментирует это так:
Even with /MOVE specified, however, Robocopy deletes only those source files that it successfully copies to the destination. There
is no guarantee that a skipped source file is identical to its corresponding destination file (even if the file times and
sizes are identical) until immediately following a successful copy. For that reason, some files and directories (such as skipped Same files) might remain in the source tree even when /MOVE is specified. You must determine whether to delete the remaining entries, and do so manually. Никакого суперключа для обхода этой паранойи я не нашёл
Саша, правильно ведь ключи обозначают
/MOV :: Перемещать файлы (удаление из источника после копирования).
/MOVE :: Перемещать файлы и папки (удаление из источника после копирования).
не совсем понятны ваши полные требования создании копии
объясню на примере,
1. создаем папки — c:\1 и c:\2
2. кидаем в папку «1» файл proba.txt
3. выполняем robocopy c:\1 c:\2 /MOV
4. proba.txt перемещается в папку «2», всё чудесно
5. руками копируем тот же файл proba.txt в папку «1»
6. снова выполняем robocopy c:\1 c:\2 /MOV
7. робокопи определяет что файл тот же (имя/размер/дата создания(модификации?)) и не выполняет действий с ним, то есть и не копирует, и НЕ УДАЛЯЕТ из папки «1» о чем и сказано в хелпе
(For that reason, some files and directories (such as skipped Same files) might remain in the source tree even when /MOVE is specified)
Я хотел бы, чтобы файл в пункте 7. не копировался, но удалялся.
Richcopy кстати, насколько я понял, так же себя ведёт.
случай интересный, мне кажется вам нужно добавить еще ключ /IS,
т.е. указывать /MOV /IS
этот ключ заставляет робокопи повторно читать и копировать файл (проверено Procmon), что не оптимально
не оптимально, зато результат такой какой нужно получается
тогда нужно скорее всего писать какой-то батник
C:\\robocopy\\robocopy.exe \\\\terminalserver\\d$ d:\\terminalserver\\D /COPYALL /R:1 /W:1 /NP /TEE /LOG:c:\\robocopy\\logs\\terminalserver\\D_%date%.log такой конфиг, лежит в папке с robocopy.exe.
При запуске говорит: Синтаксическая ошибка в имени файла, имени папки или метке тома.
при этом если я через \»Выполнить\» хожу по путям из этого файла все работает
а зачем по две черточки?
возможно неправильно обрабатывает знак доллара, попробуйте подключите эти удаленный ресурс как диск, а потом копируйте
Не работает ключ /XF. Не пойму, в чем ошибка? Пример:
Robocopy /s /xf archive.pst /r:1 /w:1
Дмитрий, попробуйте написать большими буквами /XF
Пробовал, результат тот же.
Посмотрел на проблему более внимательно, у вас пример неполный, вот, мой пример работает
robocopy d:\1 d:\2 /s /xf archive.pst /r:1 /w:1
копирует из папки 1 в папку 2, пропуская файл archive.pst
Спасибо. Помогло.
Было так, и не работало:
Robocopy /s /xf archive.pst /r:1 /w:1 /maxage:1 «%source%» «%destin%»
Стало так, работает:
Robocopy «%source%» «%destin%» /s /xf archive.pst /r:1 /w:1 /maxage:1
Пожалуйста, хорошо что получилось
Почитал посты, само описание и не понял- как через него зеркалировать 2 шары? 1 изменяется, а во вторую мне нужны актуальные файлы. /MIR как то не особо подходит…
Кирилл, если зеркалировать, то миррор в самый раз,
почему вам не подходит?
Можете просто дописывать новые и не удалять старые.
Опишите что вы точно хотите получить?
Может получиться помочь.
Народ, а что с ключом MT:? Както оно в вин2003 ругается. Не хочет принимать потоки!!!
У меня сейчас нет под рукой Windows 2003, а зачем нужны потоки это ведь не копирование по ftp с ограничением скорости потока?
И не копирование с разных источников для получения более быстрой скорости.
Скажите как различать параметры
/A+:[RASHCNET] :: Добавлять заданные атрибуты скопированным файлам.
/A+:[RASHCNET] :: Удалять заданные атрибуты из скопированных файлов.
Андрей, классно — это ошибка перевода мануала в системе Windows
ведь я брал его оттуда, даже сейчас глянул в своей Windows 7
robocopy /?
на русском и там и там плюс, а вот в хелпе на английской версии пишут правильно
/A-:[RASHCNET] : UnSet file Attribute(s) on destination files — remove
спасибо, я исправил у себя, еще бы кто письмо в Microsoft написал
Будем разбираться с программой
Если n < 1900, то n = n дней, в противном случае n — дата в формате ГГГГММДД, а не ДДММГГГ
Антон, может ли программа при копировании файла в папку, переименовать его с приращением _1 или _2 и тд по возрастанию (far может переименовывать, но это в ручном режиме), если файл в конечной папке уже есть?
Олег, нет, робокопи не имеет такой функции,
полазил поискал по инету, как-то быстро ничего не попалось.
Опишите вашу задачу, может придумаю другой какой-нибудь вариант.
Пробни acebackup.com, а нет — гугли «backup versioning»
Добрый день. Помогите с проблемой. Первый раз пользуюсь робокопи. Нужно чтобы один файл копировался с заменой в определенное время в определенное место в сети. Было сделано следующее:
robocopy «F:\Pub\RC\11_Склад\12_Доклад\сотрудник ВН.ods» «\\inf1\dokument$\сотрудник ВН.ods» /R:0 /Z
Что не так? Пишет error 123 Синтаксическая ошибка в имени файла, имени папки или метке тома.
Спасибо.
Добрый день,
вот работающий синтаксис
c:\>robocopy «p:\Реклама\Заказы\Техник Максим» «c:\temp\11» Лист-1.jpg
чтобы про времени — создаем задачу на запуск батника в планировщике
Сейчас напишу заметку, действительно необычный синтаксис для одного файла.
Можно ли в robocopy записывать в лог только ошибки? То есть успешно скопированные файлы не писать в лог. При чем лог ошибок составлять по каждому файлу, а не об обработанной команде в целом.
Данил, вроде бы такой возможности нет.
Доброго времени суток. Не знаю, актуальна ли еще тема, хочу поделиться следующим опытом с Robocopy. Заметил, что при использовании параметра /Z сильно падает скорость копирования, прям вопиюще. Причем скорость скачет в пределах от нескольких десятков килобит до десятков мегабит, изредка выстреливает до сотен мегабит. но средняя скорость около 10 мбит. На источнике и целевом сеть 1 Гбит. При простом копировании файлов или с помощью робокопи без параметра Z — 300-900 Мбит, т.е. все нормально. Я конечно понимаю, журналирование для возобновления отнимает ресурсы, но чтобы настолько..
Сталкивался ли кто с подобным? или это у меня какие-то проблемы?
PS: В остальном Robocopy — вещь! Не понимаю как раньше жил без нее. Просто сейчас столкнулся с задачей копирования больших объемов (терабайты) с особыми требованиями, которые может выполнить только Robocopy.
Евгений, я не использую ключ /Z, мне хватает /R /W, из того что я нашел про ключ /Z это действительно так — он сильно замедляет копирование.
/Z Copy files in restartable mode.
«Restartable» means Robocopy should write a recovery record inside an incomplete file so if the operation is interrupted or aborted, a future run of Robocopy can resume copying where the previous one left off, instead of starting over at the beginning. This is useful for reliably copying large files or many files over an unreliable network such as a VPN or the Internet. An incomplete file has the same file size as the complete file, and is noted with a date stamp in the file system being within 24 hours of 1980-01-01 00:00.
Basically, /Z adds lots of overhead adding markers to the file it’s writing to to track the copy process in case the network connection drops or the power goes out in the middle of copying a 100TB file and you don’t want to start over from the beginning.
e.g. You can run robocopy /z and half way thru copying a file, ctrl-c cancel, restart the computer, then run the command again and it’ll continue from where it left off.
Drawback it it’ll copy super slowly.
В двух словах — если у вас не очень сильно плохое соединение и не очень большие файлы, то лучше ключ /Z robocopy не использовать.
Здравствуйте,
Есть задача — переместить файлы и папки с одного места в другое, исключая определенные папки и файлы
Если файлы и папки, что я указываю в исключении имеют имя английскими буквами, то перемещение проходит правильно, если же русские буквы — то данные файлы и папки не попадают в исключение. Подскажите, что я делаю не так?
CHCP 1251
robocopy «D:\test Robocopy\1» «D:\test Robocopy\2» /E /MOVE /XF 111.txt 111.xlsx Слово.docx /XD Обмен temp
Добрый день, вот синтаксис
robocopy \\192.168.49.203\h\договоры\ s:\Blanki\договоры\ /MIR /LOG:robocopy.txt
Когда запускаю bat файл с ярлыка или просто нажатием enter всё срабатывает когда делаешь задание в планировщике на bat файл ошибка недопустимый параметр #4 : «/LOG:robocopy.txt
Роман, возможно нужно указать полный путь к файлу лога.