В этой записи речь пойдет о полезной утилите Robocopy. Robocopy - Это мощный инструмент, включенный в Microsoft Windows Server® 2003 Resource Kit Tools, включает все эти новые функции и даже больше. Robocopy обеспечивает выполнение более серьезных задач по копированию файлов, которые могут действительно облегчить вашу работу. Самым большим достоинством, как мне кажется, будет для вас возможность создания полных зеркальных копий двух файловых структур (включая все вложенные каталоги и файлы, по вашему выбору), не копируя каких-либо ненужных файлов. Будут копироваться только новые или обновленные файлы из их исходного местоположения. Robocopy также позволяет сохранять всю соответствующую информацию о файле, включая дату и время изменения, списки управления доступом (ACL) и т.п.
Загрузить GUI Robocop: UtilitySpotlight2006_11.exe (1052KB)
Попробуйте вспомнить о том времени, когда, независимо от того, на каком уровне вы владеете компьютером: как IT-специалист или просто пользователь домашнего компьютера, вам не нужно было копировать файлы. Независимо от того, создаете ли вы базовый образ для установки рабочей области, размещаете ли новые страницы на Web-сервере или просто копируете или перетаскиваете свои документы и фотографии, копирование файлов является одной из тех ключевых операций, которую вы вынуждены выполнять в процессе вашей ежедневной работы на компьютере.
Но есть одна проблема. У традиционных функций копирования и вставки, встроенных в Microsoft® Windows® есть некоторые ограничения. Эти функции довольно хорошо подходят для решения простых задач (перемещение документа из одной директории в другую и т.д.), но им не хватает дополнительных возможностей, которые необходимы IT-специалисту в рабочей области. Например, операция копирования и вставки не предусматривает никакой возможности надежного восстановления, что позволило бы обеспечить восстановление файлов при коротком сетевом сбое. Такая схема построена на принципе “всё или ничего”, особенно при копировании целых каталогов. Посредством пользовательского интерфейса (UI) вы не можете выбрать для копирования только новые или обновленные файлы. Вы либо копируете отдельные файлы, целые каталоги, либо вообще ничего.
Robocopy - Это мощный инструмент, включенный в Microsoft Windows Server® 2003 Resource Kit Tools, включает все эти новые функции и даже больше. Robocopy обеспечивает выполнение более серьезных задач по копированию файлов, которые могут действительно облегчить вашу работу. Самым большим достоинством, как мне кажется, будет для вас возможность создания полных зеркальных копий двух файловых структур (включая все вложенные каталоги и файлы, по вашему выбору), не копируя каких-либо ненужных файлов. Будут копироваться только новые или обновленные файлы из их исходного местоположения. Robocopy также позволяет сохранять всю соответствующую информацию о файле, включая дату и время изменения, списки управления доступом (ACL) и т.п.
Конечно, мы все работаем по-разному. Некоторые люди предпочитают пользоваться меню команд, и для них инструмент Robocopy в таком виде просто находка. Однако другие больше привыкли делать это вручную с помощью мышки и для этой группы людей предусмотрен графический пользовательский интерфейс Robocopy. Это долгожданное дополнение к Robocopy разработал Дерк Бениш (Derk Benisch), системный инженер группы MSN Search компании Microsoft. Программа Дерка позволяет пользователям настраивать свои сценарии Robocopy с использованием простого и очень понятного графического интерфейса (см. Рисунок 1).
Рисунок 1(Щелкните изображение, чтобы увеличить его)
Графический пользовательский интерфейс Robocopy позволяет выбирать исходный и конечный путь, а также любые пользовательские опции и фильтры, которые вы хотите включить, независимо от того, хотите ли вы создать отображение диска, где вы хотите хранить полученные журналы и т.д. Конечно, все эти функции можно выполнить с помощью стандартного командного меню Robocopy, но для многих использование возможностей графического интерфейса существенно упрощает работу.
Графический интерфейс Robocopy также расширяет возможности существующего инструмента Robocopy очень интересным образом. Например, этот инструмент является многопоточным и позволяет создавать сценарий Robocopy, выполнять его и начать создание другого сценария в процессе выполнения первого. Он также позволяет вам сохранять свои сценарии (даже если вы их вообще не выполняете) с тем, чтобы вы могли создать библиотеку стандартных сценариев или делиться ими со своими коллегами. И что самое важное, графический интерфейс Robocopy позволяет сохранять ваши настройки по умолчанию с тем, чтобы не начинать каждый раз с установки своих настроек.
Графический интерфейс Robocopy включает собственный файл справки, а также вложенную копию полного справочного руководства по Robocopy. Данный справочник включает полный указатель всех команд и синтаксических структур Robocopy для того, чтобы вы смогли легко найти те настройки, которыми вы бы хотели воспользоваться.
Источник: http://technet.microsoft.com/ru-ru/magazine/2006.11.utilityspotlight.aspx
Синтаксис команды:
>robocopy /?
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Начало: Tue Jan 06 13:20:04 2009
Применение:: 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 :: Включить следующие файлы.
Как видите функционал программы богатый и она действительно "умна". Советую