bat скрипт для резервного копирования папки

Не свисти

информационно-развлекательный блог

Батник для архивирования файлов и папок. Бэкап 1С баз.

Сейчас я расскажу о том, как при помощи bat-файлов можно архивировать файлы и папки как на локальном компьютере, так и в сети организации.

Внимание. Для использования данного метода архивирования у Вас на компьютере должна быть установлена программа WINRar.

Рассмотрим пока самый простой вариант архивирования записью в одну строчку.

. При копировании кавычки надо переписать (поменять).

Теперь коротко о том что тут написано

Вот что бывает без указания параметра chcp 1251

По факту можно создать файл с расширением *.bat, сохранить в нем одну строчку и все будет работать. Но это всего лишь одноразовый и не удобный вариант.

Присвоение архиву даты создания. Автоматическое архивирование батником.

Все что для этого нужно сделать — добавить переменные времени в самом bat-файле. И потом указать эти переменные в создаваемом архиве. Все это выглядит примерно так:

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

Примечание: этот образец бат-файла подойдет для автоматического архивирования. То есть, если поместить данный батник в «назначенные задания» и указать промежуток запуска раз в сутки, то у Вас будут создаваться архивы каждый день, храниться в одном месте и у каждого архива будет дата создания. Это подходит для многих задач, в том числе и для бэкапа баз данных 1С.

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

Архивирование с заданным количеством бэкапов (архивов)

Теперь, рассмотрим вариант батника для архивирования папок и файлов, который будет делать указанное количество бэкапов (3, 5, 10, 30 — сколько захотите) с их циклической перезаписью. То есть, проще говоря, все будет полностью автоматизировано.

К примеру, Вы захотели, чтобы у Вас всегда был архив за три последних дня.

Для такого метода бэкапа Вам понадобится, своего рода, временное хранение архивного файла. Проще говоря, папка отличная от места хранения основных бэкапов.
Вот как будет выглядеть весь скрипт:

В итоге у нас получилось 3 архива в папке, последний из которых с указанием даты создания

Как видите, я создал отдельную папку D:\timearh для основного временного архива.

if exist D:\timearh\papka_01*.rar del D:\timearh\papka_01*.rar — команда проверяет нахождение файла во временной папке и удаляет его если он есть, это надо для того, чтобы файлы там не дублировались.

if exist D:\arhiv\papka_03*.rar del D:\arhiv\papka_03*.rar
if exist D:\arhiv\papka_02*.rar ren D:\arhiv\papka_02*.rar papka_03.rar
if exist D:\arhiv\papka_01*.rar ren D:\arhiv\papka_01*.rar papka_02.rar

Эти три команды нужды ля переименовывания основных файлов в сторону увеличения четности и удаления самого последнего файла, в нашем случае третьего. По сути, количеством этих строчек Вы и регулирует общее количество создаваемых архивов. Для увеличения бэкапов достаточно лишь дописать нужное количество строчек и не забыть переименовать порядок.

xcopy D:\timearh\papka_01_*.rar D:\arhiv\ — копирует файл из временной директории D:\timearh в основную папку с бэкапами. Это и есть наш самый свежий архив с указанием даты создания.

Данный вариант идеально подходит для бэкапа 1С баз. Он полностью автоматизирован, можно спокойно хранить месячный (а то и больший) архив баз.

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

Источник

CMD/BAT, резервное копирование и глубина архивации

Наиболее доступный инструмент для резервного копирования — командная строка. Найти более-менее приличную реализацию резервного копирования в Windows-системах средствами CMD/BAT-файлов можно, воспользовавшись любым поисковиком. Однако часто нет необходимости накапливать и хранить все созданные архивы, достаточно лишь нескольких самых последних. В этом случае необходима реализация резервного копирования с поддержкой глубины архивации. Найти реализацию поддержки глубины архивации в таких скриптах уже гораздо сложнее.

Вашему вниманию — относительно простой скрипт (CMD-сценарий), реализующий резервное копирование с заданной глубиной архивации.

Скрипт предназначен для создания резервных копий путем упаковки в архив содержимого произвольного каталога. Помимо собственно поддержки глубины архивации в скрипте раеализовано сохранение новых резервных копий в каталоги, имена которых формируются на основе даты/времени резервирования. При выполнении архивации RAR будет пытаться открывать также совместно используемые файлы (бывает полезно, чтобы не заставлять пользователей обязательно выйти из программы; например, при резервировании файловых баз 1С). Удобнее всего использовать такой подход к резервированию данных, если прописать запуск скрипта в планировщик.

Поскольку используется консольная версия архиватора RAR, необходимо, чтобы для скрипта был доступен RAR.exe. Для новых локализованных версий архиватора помимо файла RAR.exe также желательно наличие файла RarLng.dll, а для зарегистрированных пользователей — еще и файла rarreg.key. Для обеспечения доступности можно, например, просто положить все нужные файлы в рабочий каталог скрипта.

Под глубиной архивации здесь подразумевается не промежуток времени, за который хранятся архивы, а количество последних хранимых архивов. При использовании интервала резервирования в 1 день (сутки) глубина резервирования в днях будет совпадать с количеством хранимых архивов.

В переменных, содержащих пути к файлам/каталогам, можно использовать и абсолютные, и относительные пути, а также пробелы.

В примере содержится только один блок непосредственного создания резервной копии (расположен после соответствующего комментария). Можно добавить несколько таких блоков один за другим, например, скопипастив имеющийся блок и изменив значения переменных SrcData и ArcName.

Резервные копии раскладываются в каталоги, имена которых содержат дату и время выполнения резервирования в следующем порядке: год, месяц, дата, часы, минуты, секунды, сотые доли секунды (справедливо для русских региональных настроек). Это необходимо для того, чтобы алфавитная сортировка списка резервных копий совпадала с сортировкой по дате/времени создания копий (то есть просто для удобства работы с копиями). В случае использования региональных настроек, в которых порядок следования элементов даты другой, для получения аналогичного эффекта необходимо изменить порядок токенов %%a-%%g в команде

Проверка существования каталога с резервной копией перед его созданием нужна, если вдруг захочется из имени каталога убрать «лишнее» (например, сотые доли секунд) и запускать скрипт чаще, чем позволяет такое имя. В этом случае ошибки при выполнении не будет, но RAR честно перезапишет уже имеющиеся в каталоге архивы.

«Родная» кодировка для CMD-сценариев — OEM (866), а для Windows-версии архиватора RAR — ANSI (Windows-1251). В связи с этим лог-файл грешит некоторой неудобочитаемостью, если сценарий сохранить в родной для него OEM-кодировке. С одной строны, для себя я счел этот недостаток некритичным (в редакторе/просмотрщике Far Manager не трудно нажать F8 для смены кодировки), а с другой стороны ничто не мешает сохранить сценарий в кодировке ANSI (вывод в консоль командами ECHO в сценарии не используется — только в лог-файл, — поэтому пользователь никаких кракозяблов не увидит, зато лог будет нормально записываться в одной и той же кодировке). Буду благодарен, если предложите более корректный способ «подружить» эти кодировки.

Источник

BAT скрипт для резервного копирования папки

bat скрипт для резервного копирования папки

bat скрипт для резервного копирования папки

Набросал ещё один маленький BAT скрипт для резервного копирование папки. Внесите свои данные и через scheduler настройте расписание резервного копирования.

Ссылки

Функции

Пример настройки расписания

В Task Scheduler настраиваем новое задание.

bat скрипт для резервного копирования папки

bat скрипт для резервного копирования папки

В триггерах настраиваем расписание. У меня резервное копирование происходит раз в сутки.

bat скрипт для резервного копирования папки

Указываем ссылку на наш BAT файл.

bat скрипт для резервного копирования папки

bat скрипт для резервного копирования папки

Проверяем настройки. OK.

Теперь папка будет резервироваться раз в день. С настройкой NumFolders=10 в BAT файле мы будем хранить данные за последние 10 дней.

Источник

Автоматическое резервное копирование файлов с архивированием BAT/CMD

bat скрипт для резервного копирования папкиВсе мы не раз слышали о необходимости выполнения резервного копирования данных. Крах системы, чьи-то шаловливые ручки, или они же, только свои, да еще множество причин, по которым ваши данные могут испортиться или уничтожиться. Тем, кому приходилось неделями восстанавливать утраченные данные, это объяснять уже не приходится.

К тому же, по известному закону подлости, вероятность того, что нужные файлы испортятся, намного выше, если не делать бэкап. Так давайте же все сохраняться!

Автоматическое резервное сохранение должно удовлетворять определенным требованиям:

Существует множество программ, бесплатных и не очень, выполняющих резервное копирование данных. Приведу пример бесплатной и платной программы.

Сегодня мы рассмотрим, как своими силами организовать автоматическое резервное копирование файлов на внешний диск или удаленный сервер.

Задача: написать максимально простой скрипт по резервному копированию данных, который архивирует каталог с файлами, требующих сохранения, и копирует их в другой каталог на внешний диск или удаленный сервер.

Создадим файл Backup.bat со следующим содержимым:

Итоги

Мы написали самый простой скрипт по резервному копированию файлов. Конечно, при желании можно накрутить на него много полезного функционала, например:

Чтобы сделать автоматический запуск файла, например, раз в неделю, нужно создать назначенное задание в Планировщике Windows.

Источник

Резервное копирование данных через bat файл

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как выполнить резервное копирование базы данных через cron?
Здравствуйте! Написал вот такой скрипт для резервного копирования БД и помещения дампов в архив.

Резервное копирование bat-ников, которые изменялись с 10 минут назад до этой секунды.
Не могу понять в чем проблема, на IF’e вылетает где-то на 20 батнике. @echo off if not exist.

Резервное копирование файла через Интернет
Есть 2 компа. На одном работает 1С, второй файловое хранилище(оба Win 10). Они находятся в разных.

Резервное копирование данных
Всем привет. Извиняйте если не туда пишу. Вопрос: в каталог сохранются бекапы баз каждый день.

Решение

yarxslav, вот это другой разговор. Сейчас набросаем

Добавлено через 16 минут
Значит создаёте 1.bat:

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Резервное копирование данных
Всем привет! Мне необходимо написать программу, которая через указанный промежуток времени будет.

Резервное копирование данных
Доброе утром уважаемые Форумчане Ситуация такая, имеется 38 компьютеров (Windows) и два сервера.

bat скрипт для резервного копирования папкиРезервное копирование через Acronis True image
Всем привет! Хочу настроить резервное копирование файлов в сетевую папку доменной сети. Папка.

Запуск 1с через bat- файл, как в случае неправильной авторизации закрыть окно авторизации через bat- файл
Делаю запуск 1с через bat- файл. Как в случае неправильного имени или пароля пользователя окно.

Резервное копирование базы данных
Здравствуйте! Появилась необходимость сделать резервную копию базы данных. Использовал Microsoft.

Архивация данных, резервное копирование БД
Здравствуйте, у меня есть проект в билдере, подвязанный к access,и все данные из access.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *