BAT. команда ROBOCOPY - делаем бэкап с сервера

Предыстория:

Есть свободный диск, который не удалось приспособить к OracleDBServer,поэтому решил поставить его на еще один свободный компьютер и уже на нем ежедневно делать бэкап с сервера. В качестве инструмента для копирования было решено использовать bat, в который "засунуть" команду ROBOCOPY со всеми вытекающими.

По сравнению с командой COPY имеет более широкие возможности и является наиболее гибким средством копирования в командной строке Windows. Да и собственно в мануале по самой команде указано на то, что она по сути устарела и лучше использовать ROBOCOPY.

Синтаксис командной строки: 
ROBOCOPY источник [целевой_объект] [/A | /M] [/D[:дата]] [/P] [/S [/E]] [/V] [/W] [/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U] [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B] [/EXCLUDE:файл1[+файл2][+файл3]...]

В интернете куча информации по всем ключам, поэтому расписывать не буду. Если будет нужно, найдете. Ниже оставлю лишь описание тех ключей, которые я использовал.

  • /S :: Копировать вложенные папки, кроме пустых.
  • /Z :: Копирование файлов с возобновлением
  • /M :: Копировать только файлы с атрибутом <Архивный> и сбросить его.
  • /COPYALL - данный ключ скажет утилите Robocopy.exe, что нужно при копировании перенести все сведения о файле (Аналог /COPY:DATSOU)
  • /PURGE - позволит удалить каталоги и файлы в папке назначения, которые уже не существуют в источнике.
  • XD dirs [папки]: :: Исключить папки, соответствующие заданным именам и путям.
  • /R:n :: число повторных попыток для неудавшихся копий: по умолчанию - 1 миллион.
  • /ETA :: Показывать оценку времени окончания копирования файлов.
  • /V :: Подробный вывод с указанием пропущенных файлов
  • /LOG+: файл :: Записывать состояние в файл журнала (добавлять к существующему журналу).
  • /MIR - в данном случае будет создана полная копия (зеркальная) источника в назначении, аналогично выполнению Robocopy.exe с ключами /E /PURGE

Сами команды в bat-нике:
@echo off rem Название батника прописать внизу title Бэкап с DBServer на TEST-CHARUGIN (1TB) set f1=Z:\ set f11=E:\0bmenka set f2=Z:\_Обновления set f22=E:\0bmenka\_Обновления set f3=W:\ set f33=E:\distr
@echo бэкапим Обменку CD %f1% ROBOCOPY %f1% %f11% /XD "Temp" "Для оксаны" "_Обновления" /R:3 /NP /LOG+:backup.log /MIR @echo - - - - - - - - - - - - - - - - - ЗАВЕРШЕНО - - - - - - - - - - - - - - - -
@echo бэкапим папку "Обновления" CD %f2% ROBOCOPY %f2% %f22% /XD "AZKExchange" "АЦК-Анализ" "АЦК-Бюджетный контроль" "АЦК-Госзаказ" "АЦК-Контроль" "АЦК-Мониторинг" "АЦК-Планирование" "АЦК-Транспорт" "АЦК-Финансы" /R:3 /NP /LOG+:backup.log /MIR @echo - - - - - - - - - - - - - - - - - ЗАВЕРШЕНО - - - - - - - - - - - - - - - -
@echo бэкапим дистры CD %f3% ROBOCOPY %f3% %f33% /R:3 /NP /XD "4android" "2gis" "Media" /LOG+:backup.log /MIR @echo - - - - - - - - - - - - - - - - - ЗАВЕРШЕНО - - - - - - - - - - - - - - - -

Сайты где можно взять инфу по ключам и использованию команды:

Комментарии

Популярные сообщения из этого блога

Linux (РедОС). Сброс пароля

TRUNCATE / DELETE / DROP или как очистить таблицу

КБК. КВФО - Код вида финансового обеспечения (деятельности)

РедОС. Подключение к сетевой папке

SQL Error [53200]: ОШИБКА: нехватка разделяемой памяти Подсказка: Возможно, следует увеличить параметр max_locks_per_transaction