Robocopy список файлів за певний період. Robocopy - Найцікавіше в блогах

Для створення точних дублікатів всіх необхідних файлів в папці профілю користувача (C: \ Users \ Ваше ім'я) шляхом багатопотокового копіювання.

Навіщо використовувати Robocopy?

Якщо ви - свідомий користувач, ви напевно і так регулярно створюєте образ жорсткого дискаі здійснюєте резервне копіювання даних за допомогою засобу «Архівація та відновлення» (Backup and Restore) Windows 7. Однак не завадить створити і ще одну резервну копію - на всякий випадок. Це можна зробити і вручну, шляхом перетягування потрібних файлівна зовнішній жорсткий диск, Але якщо їх занадто багато, процес може затягнутися.

Утиліта Robocopy дозволяє використовувати понад вісімдесят перемикачів командного рядкадля створення ефективного сценарію резервного копіювання. Щоб полегшити вам завдання, я поясню, як використовувати можливості утиліти для створення дзеркальної копії всіх файлів в папці вашого профілю (C: \ Users \ Ваше ім'я).

складання команди

Як приклад я складу команду для копіювання вмісту моєї користувальницької папки«C: \ Users \ Greg Shultz» в папку «TheBackup» на зовнішньому жорсткому диску, примонтировать під літерою «G» (ви, зрозуміло, замініть імена і адреси на власні). Команда буде починатися так:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup"


Я хочу скопіювати всі папки, навіть порожні, тому що вони можуть стати в нагоді для майбутніх файлів. У той же час я хочу виключити з копіювання файли, які вже видалив. Можна використовувати для цього перемикачі / S і / PURGE, але я віддаю перевагу обійтися одним перемикачем для виконання обох завдань - / MIR. Тепер команда виглядає так:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup" / MIR


У папці «C: \ Users \ Greg Shultz» є кілька прихованих системних файліві папок, які я не збираюся копіювати - наприклад, «NTUSER.DAT» і «AppData». Крім того, в папці профілю присутні кілька точок з'єднання, які прив'язують до неї системні папки - наприклад, «Cookies» і «SendTo».

Щоб виключити з копіювання приховані системні файли, я використовую перемикач / XA: SH, а щоб не копіювати папку «AppData» з усім вмістом - перемикач / XD. Нарешті, перемикач / XJD дозволяє виключити всі точки з'єднання. В результаті команда тепер виглядає так:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup" / MIR / XA: SH / XD AppData / XJD


Одна з найбільш корисних особливостей Robocopy связна з тим, як утиліта обробляє відкриті файли. При виявленні такого файлу програма призупиняє копіювання і чекає, поки він закриється. Кожні 30 секунд Robocopy намагається відновити копіювання. За замовчуванням, передбачений мільйон спроб (я не жартую!), Але в такому випадку копіювання взагалі не судилося завершитися, тому кількість спроб краще скоротити.

Для цього використовується перемикач / R, а змінити інтервал між спробами можна за допомогою перемикача / W. Я скорочу кількість спроб до п'яти, а часовий проміжок між ними - до 15 секунд. Тоді Robocopy зможе відновити копіювання, почекавши якийсь час. Тепер команда виглядає так:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup" / MIR / XA: SH / XD AppData / XJD / R: 5 / W: 15


Зараз можна додати в команду перемикач многопоточного копіювання / MT [: n], де n - це число потоків від 1 до 128. Значення n можна і не вказувати, а обійтися одним лише перемикачем / MT. В такому випадку буде використовуватися вісім потоків. Я вважаю за краще 32 потоку. Зверніть увагу, що багатопоточний копіювання не сумісно з перемикачами / IPG і / EFSRAW. Отже, нова команда:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup" / MIR / XA: SH / XD AppData / XJD / R: 5 / W: 15 / MT: 32


Як і всі утиліти командного рядка, Robocopy постійно інформує користувача про стан виконання операції, але куди зручніше зберегти ці дані в формі звіту. Щоб отримати повну картину, я буду використовувати перемикач / V, проте відомості про прогрес копіювання кожного окремого файлу мені не потрібні, тому я додам в команду перемикач / NP. Файл звіту створюється за допомогою перемикача / LOG і перезаписується при кожному наступному запуску утиліти. Остаточна команда виглядає так:

Robocopy "C: \ Users \ Greg Shultz" "G: \ TheBackup" / MIR / XA: SH / XD AppData / XJD / R: 5 / W: 15 / MT: 32 / V / NP /LOG:Backup.log


Створення і використання сценарію

Тепер, коли ви знаєте, як використовувати перемикачі, складіть потрібну вам команду в Блокноті (Notepad) і збережіть файл з ім'ям «RobocopyBackup.cmd». Щоб відкриті файли сценарію і звіту не перешкоджали копіювання, я створив в кореневому каталозі папку «C: \ BackupTool» і зберіг їх туди.

Файл звіту буде зберігатися в той же каталог після кожного запуску утиліти. Хоча це простий текстовий файл, він може виявитися надто об'ємним для Блокнота, тому відкривати його варто в якомусь іншому текстовому процесорі - наприклад, в Wordpad.

Тепер, коли вам знадобиться створити додаткову резервну копію, просто запустіть файл «RobocopyBackup.cmd» подвійним клацанням, а після закінчення операції вивчіть файл звіту «Backup.log». За допомогою можна запрограмувати регулярний запуск файлу «RobocopyBackup.cmd» за розкладом.

А що думаєте ви?

Чи користуєтеся ви утилітою Robocopy в Windows 7? Які ще перемикачі ви б додали в команду для резервного копіювання? Поділіться своєю думкою в коментарях!

матеріали

Кожному адміністратору Wintel знайома утиліта Robocopy. Ще з часів Windows NT4 вона увійшла в Resource Kit, а починаючи з Windows Vista - до складу операційної системи.
Навіщо потрібна Robocopy? Для того щоб копіювати файли. Багато файлів. В основному ми використовуємо її для міграції файлових серверів або резервного копіювання.
Є багато цікавих варіантів міграції файлових серверів, наприклад, з використанням DFS-R. Але немає нічого простіше й надійніше запуску

Robocopy \\ SERV \ D $ F: \ / e / copyall / zb / mt: 8 / r: 1 / W: 5 / V / TS / FP / ETA / TEE /LOG:c:\temp\robocopy.txt

У фіналі можна закрити користувальницький доступ до ресурсу і створити Інкрементальний копію, додавши ключ / MIR.
Але так чи хороша Robocopy? Чи то добре настільки, щоб довірити їй міграцію найважливіших файлів?

Одним прекрасним суботнім днем ​​я мігрував файловий сервер. Співробітників на роботі не виявилося. Перша копія була зроблена ще вчора, залишалося лише зробити інкремент і відновити посилання в DFS.
Я запустив Robocopy, подивився журнал, а для перестраховки, перед перемиканням, вирішив подивитися, скільки файлів і папок в вихідному і кінцевому файловому ресурсі. Числа не зійшлися. Несподівано.


Але чому? Такий результат я бачив вперше. Я зробив щось не так? Хтось із співробітників все ж змінив файли, поки йшло инкрементальное копіювання? Ключ / MIR дав збій? Якісь файли пропущені? Порожні? З Access Denied? Пошкоджені?

Добре, відключаємо мережевий доступ і знову копіюємо файли. Чи не сходиться! Пробуємо без / MIR. Той же результат.
Я був в подиві. П'ятнадцять років я на 100% довіряв Robocopy, і ось сьогодні, вперше, вона дала збій. Деяких файлів просто немає в місці призначення! Просто неможливо в це повірити.

Давайте підрахуємо файли по-іншому. Качаємо утиліту FileList і робимо лістинг файлів у вихідній і кінцевій папці. А ось тут число файлів збігалося. Дивовижно.

А що якщо справа не в Robocopy? Що якщо Windows Explorer вважає неправильно? Може бути в Windows Server 2008 R2 поганий Explorer, а в Windows Server 2012 R2 хороший? Я відкрив властивості локальної та цільової папкина вихідному сервері Windows Server 2008 R2. Число файлів не збігалося. Сподіватимемося, що в Windows Server 2012 R2 все виправлено. Відкриваємо властивості папок на новому сервері ... І ...


Чи не збіглося не тільки число файлів у вихідній і кінцевій папці. Число файлів відрізнялося від знятих на Windows Server 2008 R2. Чорна вулична магія.

І в цю хвилину (нарешті) на мене зійшло прозріння. Справа не в Robocopy, і не в версіях Explorer. Просто Explorer не вміє (!) Вважати, і не вважає файли і папки з іменами довше 260 символів.

На початковому сервері файли були розташовані по шляху «F: \ Office1». На новому - «U: \ SharedFiles \ Office1».
Всього лише через подпапки «SharedFiles» імена деяких файлів і папок стали довше 255 символів. Для Robocopy не склало труднощів їх скопіювати. FileList легко їх підрахував. І тільки Explorer пропустив такі файли при підрахунку.

Зробивши subst N: U: \ SharedFiles і порахувавши число файлів в F: \ Office1 на вихідному сервері і N: \ Office1 на цільовому, число файлів збіглося.

Robocopy можна довіряти.

UPD: Як правильно поправляють в коментарях, все-таки не 255, а 260 символів.
256 - безпосередньо ім'я файлу «file.txt»
3 - «C: \»
1 - невидимий null в кінці
Дякуємо!

Застосовується до: Windows Server 2008, Windows Server 2003 R2, Windows Server 2008 R2, Windows Server 2012 R2, Windows Server 2012

У цьому розділі пояснюється, як використовувати засіб командного рядки Robocopy.exe, щоб заповнити файли при налаштуванні реплікації для реплікації розподіленої файлової системи(DFS) (також відомий як DFSR або DFSR) в Windows Server.Preseeding файли перед настройки реплікації DFS, Додавання нового партнера реплікації або заміни сервера, можна прискорити процес початкової синхронізації і включити клонування бази даних реплікації DFS вWindows Server 2012 R2.Метод Robocopy є одним із способів preseeding; Загальні відомостісм. в розділі.

Програма командного рядка Robocopy (надійний копіювання файлів) входить в составWindows Server 2012 R2Windows Server 2012Windows Server 2008 R2іWindows Server 2008.Програма надає розширені можливості, що включають копіювання безпеки, резервного копіювання API підтримки, Можливостей повторних спроб і ведення журналу.більш пізні версіїпідтримують багатопоточність і без буферизації введення-виведення.

важливо

Robocopy виключно заблоковані файли не копіюються.Якщо користувачі часто блокування тривалий на файлових серверах багато файлів, рекомендується використовувати інший метод preseeding.Preseeding не потрібно повністю відповідають один одному між списками файл на вихідному і кінцевому серверах, але має додаткові файли, які не існують, при виконанні початкової синхронізації для реплікації DFS, менш ефективним preseeding.Для мінімізації конфліктів блокувань, використовуйте команду Robocopy під час непікові годин для вашої організації.Завжди в журналах Robocopy після preseeding, щоб зрозуміти, які файли були пропущені через монопольні блокування.

Preseeding файли для реплікації DFS з допомогою Robocopyвключає наступні кроки:

Перш ніж використовувати Robocopy, щоб заповнити файли, необхідно завантажити та встановити останню версію програми Robocopy.exe.Це гарантує, що служба реплікації DFS не пропустити файли через проблеми в версії доставки Robocopy.

Джерело для отримання останньої версіїсумісного Robocopy залежить від версії Windows Server, на якому виконується на сервері.Відомості про завантаження виправлення з останньою версією Robocopy дляWindows Server 2008 R2іліWindows Server 2008в разделестатьі 968429 в базі знань Майкрософт.

Крім того можна знайти і встановити останні виправлення для операційної системи, виконавши наступні дії.

Щоб знайти і встановити останню версію Robocopy для певної версії Windows Server

    В підтримка пошукувведіть наступний рядок, замінивши<версії операційної системи> З відповідною операційною системою і натисніть клавішу ENTER:

    robocopy.exe kbqfe " "

    Наприклад, введіть robocopy.exe kbqfe «Windows Server 2008 R2».

    Знайдіть і завантажте виправлення з найбільшим номером ідентифікатора (тобто, остання версія).

    Встановіть виправлення на сервері.

Після установки останньої версії Robocopy на сервері, слід звести до мінімуму ймовірність, що заблоковані файли заблокує копіювання за допомогою методів в наступній таблиці.Більшість додатків не тільки блокування файлів.Однак під час звичайної роботи невеликий відсоток від файлів може бути заблокований на файлових серверах.

джерело блокування

пояснення

усунення

Користувачі віддаленого відкривати файли в загальних папках.

Співробітники підключення до сервера стандартний файл і редагувати документи, мультимедійні дані або інших файлів.Іноді називають традиційних домашню папку або загальних даних робочих навантажень.

Виконувати тільки операції Robocopy під час низького навантаження, неробочого часу.Це мінімізує число файлів, які необхідно пропустити Robocopy під час preseeding.

Рекомендується тимчасово встановити доступ тільки для читання до загальних файлових ресурсів, які будуть реплікуються за допомогою Windows PowerShellGrant-SmbShareAccessі Close-SmbSessionкомандлетів.Якщо встановити дозволу для загальної групи, наприклад все »і« пройшли перевірку для читання, звичайних користувачів може бути ймовірність для відкриття файлів із монопольним блокуванням (якщо їх застосування визначати доступ тільки для читання, при відкритті файлів).

Можна також прийняти правило брандмауера тимчасові для SMB-порт 445 вхідних підключень до цього сервера, щоб заблокувати доступ до файлів або використовувати Block-SmbShareAccessкомандлет.Проте обидва методи, дуже порушує операції користувача.

Додатки відкрийте локальні файли.

Додатки робочих навантажень на файловий сервер іноді блокування файлів.

Тимчасово відключити або видалити додатки, які блокують файли.Монітор процесу або Process Explorer можна використовувати для визначення додатків, які блокують файли. Get-DfsrFileHash в Windows PowerShell або Dfsrdiagкоманду, щоб перевірити preseeded файли, порівнюючи хеш-код на вихідному і кінцевому серверах. Інструкції див. У розділі.

Собі на замітку:


Свідомі користувачі ПК напевно вміють створювати образ жорсткого диска Vista за допомогою засобу «Архівація всього комп'ютера (Complete PC Backup)» Центру архівації та відновлення (Backup and Restore Center) і регулярно користуються засобом архівації Windows (Windows Backup) для створення резервних копій важливих файлів.

Проте, для більшої безпеки ніколи не завадить мати в своєму розпорядженні додаткову резервну копію даних. В принципі, отримати її можна простим перетягування папки «Документи» (Documents) на знімний жорсткий диск, але робити це кожен раз вручну кілька втомлює.

На щастя, в Microsoft Windows Vista є утиліта Robocopy (Утиліта входить в Windows Resource Kit), значно полегшує створення додаткової резервної копії даних. Як багатьом напевно відомо, Robocopy входить в пакет службових додатків Windows Resource Kit ще з часів Windows NT 4.0, але на цей раз розробники Microsoft забезпечили утиліту додатковими функціями, Призначеними спеціально для Vista, і вирішили включити її до складу операційної системи. Те, що скористатися нею тепер може кожен, - просто чудово, але є тут одне «але»: Robocopy - додаток з інтерфейсом командного рядка, і для управління його можливостями передбачено понад вісімдесят перемикачів.

А значить, для того, щоб використовувати функції Robocopy в повній мірі, доведеться витратити чимало часу на розшифровку всіх цих перемикачів і вибір найбільш придатних для поставленого завдання. Для затятих технічних фахівців це, може, і не проблема, але звичайних користувачів, яким потрібна всього лише утиліта для додаткового резервного копіювання, такі труднощі можуть відлякати.

Нещодавно я вирішив ґрунтовно вивчити перемикачі командного рядка Robocopy, і в результаті написав простий маленький сценарій, який можна використовувати для створення точної копії всіх файлів даних в папці профілю користувача (C: \ Users \ Імя_пользователя).

можливості Robocopy

Судячи з назви утиліти, можна припустити, що це просто засіб для копіювання файлів (Robust File Copy - «надійне копіювання файлів»), але насправді, це куди більш потужна програма з безліччю чудових функцій, які роблять його чудовим інструментом для створення резервних копій даних. Наприклад, при повторному резервне копіювання Robocopy копіює тільки ті файли, які були змінені з часу створення останньої резервної копії.

Якщо для резервного копіювання використовується ненадійна підключення до мережі, Утиліту можна налаштувати таким чином, щоб вона чекала відновлення зв'язку або відновлювала передачу файлів з того місця, на якому зупинилася. До того ж, Robocopy дозволяє зберегти всі супутні дані - штампи дати і часу, списки контролю доступу системи безпеки (Access control lists, ACL) і багато іншого.

перемикачі

У будь-якій системі Windows Vista файл Robocopy.exe зберігається в каталозі \ Windows \ System32, тому його можна запустити прямо з командного рядка (Command Prompt). Щоб створити текстовий файл з інструкціями до утиліти, який можна буде переглядати в Блокноті (Notepad), треба виконати команду Robocopy /? > RobocopySwitches.txt.


Файл документації розбитий на п'ять розділів, що включають в себе певні категорії перемикачів. Цей зручно відформатований документ, поряд з моїми прикладами, можна використовувати для створення свого власного сценарію Robocopy. Розділи довідкового файлу називаються:

Параметри копіювання (Copy Options)

Параметри вибору файлів (File Selection Options)

Параметри повторних спроб (Retry Options)

Ведення журналу (Logging Options)

Параметри завдання (Job Options)

Створення сценарію командного рядка

Для прикладу я збираюся створити сценарій резервного копіювання файлів даних з папки свого профілю «C: \ Users \ Greg Shultz» в папку «TheBackup» на знімному жорсткому диску з міткою томи «J» (в своєму сценарії, зрозуміло, треба замінити всі імена і шляху на свої власні). Мій сценарій буде починатися так:


Robocopy "C: \ Users" "d: \ TheBackup"


Я хочу створити копії всіх папок, навіть порожніх, тому що вони можуть стати в нагоді для збереження певних типів даних в майбутньому. Копіювати файли, видалені з жорсткого диска, я не збираюся. Можна було б використовувати для цього перемикачі / S і / PURGE, але можна досягти поставлених цілей і за допомогою одного-єдиного перемикача / MIR. Тепер моя команда виглядає так:


Robocopy "C: \ Users" "d: \ TheBackup" / MIR


У папці «C: \ Users» зберігаються деякі приховані системні файли і папки, резервні копіїяких мені зовсім не потрібні - наприклад, файл NTUSER.DAT і папка AppData.

Крім того, в папці «C: \ Users» зберігається цілий ряд точок з'єднання, які мені теж не потрібні. Точки з'єднання в Vista використовуються для зв'язку різних системних папок(Наприклад, Cookies і SendTo) з папкою профілю користувача.

Для виключення прихованих системних файлів я скористаюся перемикачем / XA: SH, для виключення папки AppData - перемикачем / XD AppData, а для виключення точок з'єднання - перемикачем / XJD. Тепер мій сценарій виглядає так:


Robocopy "C: \ Users" "d: \ TheBackup" / MIR / XA: SH / XD AppData / XJD


Одна з особливостей Robocopy полягає в тому, що коли утиліта стикається з файлом, який використовується в даний моментіншою програмою, вона зупиняється і чекає, поки файл закриють, щоб продовжити операцію копіювання. Через кожні 30 секунд Robocopy здійснює спробу повторного копіювання файлу. Кількість повторних спроб за замовчуванням - один мільйон (я не жартую)! При такому розкладі операції резервного копіювання навряд чи судилося коли-небудь завершитися, тому кількість повторних спроб варто обмежити якимось розумним числом.

Для зміни кількості спроб повторного копіювання використовується перемикач / R, а для зміни інтервалу між повторними спробами - перемикач / W. Я вирішив скоротити кількість повторних спроб до п'яти з інтервалом в 15 секунд - тоді після розумного періоду очікування Robocopy зможе нормально продовжувати роботу:


Robocopy "C: \ Users" "d: \ TheBackup" / MIR / XA: SH / XD AppData / XJD / R: 5 / W: 15


Як і всі утиліти з інтерфейсом командного рядка, Robocopy інформує користувача про стан операції прямо у вікні командного рядка, але куди зручніше було б зберігати ці відомості у файлі журналу. Я люблю мати повне уявлення про виконані операції, тому скористаюся для складання журналу перемикачем / V. Але ось відомості про прогрес копіювання кожного файлу у відсотках мені навряд чи знадобляться, тому я включу в сценарій перемикач / NP. Щоб створити файл журналу, я скористаюся перемикачем / LOG, який передбачає заміну існуючого журналу новим при кожному наступному резервному копіюванні. Тепер мій сценарій виглядає так:


Robocopy "C: \ Users" "d: \ TheBackup" / MIR / XA: SH / XD AppData / XJD / R: 5 / W: 15 / V / NP /LOG:Backup.log


Створення свого власного сценарію

Тепер, коли ви знаєте, як працюють подібні сценарії і які для цього потрібні перемикачі, можете відкрити Блокнот, ввести команду і зберегти файл як «RobocopyBackup.cmd». Щоб сценарій і відкритий файлжурналу не перешкоджали процесу копіювання, я створив в кореневому каталозі окрему папку«BackupTool» ( «C: \ BackupTool») і зберіг сценарій в ній.

Після кожної операції резервного копіювання файл журналу буде з'являтися в тій же папці, де зберігається сценарій. Майте на увазі: незважаючи на те, що журнал - це простий текстовий файл, він може виявитися занадто об'ємним для Блокнота, тому краще відкривати його в WordPad або іншому текстовому процесорі.

Тепер для створення додаткової резервної копії даних досить двічі клацнути на ярлику файлу RobocopyBackup.cmd, щоб запустити сценарій, а по завершенні роботи - подивитися файл Backup.log. При бажанні можна запланувати автоматичне виконання сценарію за допомогою Планувальника завдань (Task Scheduler) або cron

Es gibt dazu auch eine GUI ......


MKSBackup is a free front-end for common backup tools like MS Windows ntbackup, and it successor wbadmin, Un * x tools like tar, but also popular ghettoVCB to backup Virtual Machine on VMware ESX (i) host.

MKSBackup is developed in Python and is available for Microsoft Windows, Linux and other Un * x systems.

Читач сайту, Іван, надіслав таке питання:

Добрий день, допоможіть мені з одним питанням, мені потрібно зробити скрипт-програму, яка робила б резервні копії файлів, поясню докладніше. У цій програмі потрібно вказати, з яких папок проводиться копіювання файлів, але не всіх, а оновлених за останній день, скопіювати мені їх потрібно в розшарений папку на іншому комп'ютері. Мої дії були такими, пишу програму з командою robocopy, потім через планувальник завдань хотів зробити постійне виконання. Підкажіть, як правильно написати команду, я не сильний в програмуванні, не знаю, як правльно вказати мережеве ім'я, спасибі заранее.Іван

Що таке robocopy?

Це утиліта командного рядки Windowsдля копіювання файлів з однієї папки в іншу. Причому, це не просто копіювання, утиліта виконує реплікацію. На жаль, у мене немає досвіду використання цієї утиліти, але я так розумію, що це щось на зразок rsync в unix. Це дуже зручно для, наприклад.

Приклади використання robocopy

Взагалі синтаксис команди простий. Вказується вихідна папка і кінцева для реплікації. Якщо копіюєте в Мережеве сховище- то спочатку пишеться ім'я хоста. Стандартно мережевий шлях починається з двох зворотних слешів:

Robocopy C: \ folder \\ backupserver \ backup

Можна копіювати навіть з одного сервера на інший:

Robocopy \\ myServer \ myFolder \ myFile.txt \\ myOtherServer \ myOtherFolder

Повний опис опцій утиліти

На просторах інтернетів знайшлася ось така шикарна табличка, яка дає вичерпну інформацію щодо використання утиліти:

ROBOCOPY Синтаксис

ROBOCOPY джерело призначення [файл [файл] ...] [Параметри]

Джерело :: Вихідна папка (диск: \ шлях або \\ сервер \ загальний ресурс \ шлях).
Призначення :: Кінцева папка (диск: \ шлях або \\ сервер \ загальний ресурс \ шлях).
Файл :: копіювати файли (імена і символи узагальнення: за замовчуванням «*. *»).

До версії Windows Vista поставлялася як частина пакету Resource Kit. Починаючи з Windows Vista представлена ​​як стандартний компонент.

параметри копіювання

/ 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 +: Додавати задані атрибути скопійованих файлів.
/ A +: Видаляти задані атрибути з скопійованих файлів.
/ CREATE Створити тільки дерево папок і файлів нульової довжини.
/ FAT Створити файли призначення тільки в форматі 8.3 FAT.
/256 відключити підтримку довгих шляхів(> 256 знаків).
/ MON: n Спостерігати за джерелом; перезапустити після n змін.
/ MOT: m Спостерігати за джерелом; перезапустити через m хвилин, якщо відбулися зміни.
/ RH: hhmm-hhmm Годинники запуску - час, коли можна запускати нове копіювання.
/ PF Перевіряти годинник запуску по файлах (не по проходах).
/ IPG: n Інтервал між пакетами (мс) для зниження навантаження на мережу при низькошвидкісних підключеннях.
/ SL копіювання самих символічних посилань замість копіювання цільового об'єктацих посилань.

Параметри вибору файлів

/ A Копіювати тільки файли з встановленим атрибутом«Архівний».
/ M Копіювати тільки файли з атрибутом «Архівний» і скинути його.
/ IA: Включити файли, у яких встановлено будь-якої із заданих атрибутів.
/ XA: Виключити файли, у яких встановлено будь-якої із заданих атрибутів.
/ 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 Виключити точки з'єднання для файлів.

Параметри повторних спроб:

Ведення журналу:

/ L Тільки список - файли не копіюються, що не видаляються, чи не позначаються мітками часу.
/ X Повідомляти про всі додаткові файлах, а не тільки про вибраних.
/ V Докладний висновок із зазначенням пропущених файлів.
/ TS Включати в висновок мітки часу вихідних файлів.
/ FP Включати в висновок повні шляхи файлів.
/ BYTES Друкувати розміри в байтах.
/ NS Без розміру - не записується в журнал розмір файлів.
/ NC Без класу - не заносити в журнал класи файлів.
/ NFL Без списку файлів - не записується в журнал імена файлів.
/ NDL Без списку папок - не записується в журнал імена папок.
/ NP Без ходу процесу - не відображати число скопійованих%.
/ ETA Показувати оцінку часу закінчення копіювання файлів.
/ LOG: файл Записувати стан в файл журналу (перезаписувати існуючий журнал).
/ LOG +: файл Записувати стан в файл журналу (додавати до існуючого журналу).
/ UNILOG: файл Записувати стан в файл журналу в форматі Unicode (перезаписувати існуючий журнал).
/ UNILOG +: файл Записувати стан в файл журналу в форматі Unicode (додавати до існуючого журналу).
/ TEE Направляти вихідні дані у вікно консолі і в файл журналу.
/ NJH Без заголовка завдання.
/ NJS Без відомостей про завдання.
/ UNICODE Cостояние виведення в форматі Юнікод.

Параметри завдання:

нотатки

Утиліта robocopy ( «Robust File Copy» = «надійне копіювання файлів») спрощує завдання резервного копіювання великої кількостіфайлів.
Вона дозволяє копіювати тільки змінені файли, що дає значне прискорення при постійному резервне копіювання. Зміна файлу визначається по його датою, розміром і атрибутам.
При копіюванні даних з Windows системна пристрої мережевого зберігання (NAS) може виникнути ситуація, що ваш NAS не підтримує точність часу створення файлів, прийняту в NTFS (100 наносекунд). Це може привести до того, що ідентичні файли будуть кваліфіковані як різні, що викличе необхідність копіювання. Параметр / FFT змушує порівнювати мітки створення файлів з двухсекундной точністю. Це може дозволити уникнути копіювання однакових файлів.

приклади

ROBOCOPY \\ Server1 \ reports \\ Server2 \ backup
просте копіювання

ROBOCOPY \\ Server1 \ reports \\ Server2 \ backup *. * / E
Копіювання з поддіреторіямі

ROBOCOPY C: \ work / MAX: 33554432 / L
Список всіх файлів в папці, розмір яких більше 32м

Графічний інтерфейс для robocopy

Для автоматизації, звичайно, це не підходить, але виявилося що є і таке інше.

А тут коротко суть:

У традиційних функцій копіювання і вставки, вбудованих в Microsoft® Windows® є деякі обмеження. Ці функції досить добре підходять для вирішення простих завдань (переміщення документа з однієї директорії в іншу і т.д.), але їм не вистачає додаткових можливостей, Які необхідні IT-фахівця в робочій області. Наприклад, операція копіювання і вставки не передбачає ніякої можливості надійного відновлення, що дозволило б забезпечити відновлення файлів при короткому мережевому збої. Така схема побудована на принципі "все або нічого", особливо при копіюванні цілих каталогів. За допомогою призначеного для користувача інтерфейсу (UI) ви не можете вибрати для копіювання тільки нові або оновлені файли. Ви або копіюєте окремі файли, Цілі каталоги, або взагалі нічого. Введення в Robocopy. Цей потужний інструмент, що входить в Microsoft Windows Server® 2003 Resource Kit Tools, включає всі ці нові функції і навіть більше. Robocopy забезпечує виконання більш серйозних завдань по копіюванню файлів, які можуть дійсно полегшити вашу роботу. Найбільшим достоїнством, як мені здається, буде для вас можливість створення повних дзеркальних копій двох файлових структур (включаючи всі вкладені каталоги і файли, за вашим вибором), що не копіюючи будь-яких непотрібних файлів. Будуть копіюватися лише нові або оновлені файли з їх вихідного місця розташування. Robocopy також дозволяє зберігати всю відповідну інформацію про фото, включаючи дату і час зміни, списки управління доступом (ACL) і т.п.Microsoft

Що підтверджує позначену на самому початку здогад, що це схоже на rsync зі світу Linux. Я саме його використовую для свого. Значить, можна побудувати аналогічний скрипт для windows на базі robocopy.

Сподобалася стаття? Поділіться з друзями!