Сценарий для резервного копирования файлов
Если какие-то файлы хранятся в единственном экземпляре, значит ничего ценного в них нет и их потеря вас никак не огорчит. или, всё-таки, огорчит? Не перестаю повторять, что у всех критически важных файлов должна быть резервная копия, а то и не одна. Но постоянно делать бэкапы вручную не сможет даже самый ответственный и дисциплинированный человек, что уж говорить о нас с вами.
Для резервного копирования имеется куча решений разной степени функциональности и стоимости. Например, за сохранность данных на моём макбуке отвечает Apple Time Capsule , а за рабочими серверами следит Acronis Backup Standard версии 12.5, отнюдь не бюджетное решение. Зато, как и в случае с TimeCapsule, всегда имеется возможность не только восстановить случайно удалённый файл, но и откатиться к более ранней версии, на несколько дней назад (срок зависит от настроек).
Добавляем в файл команду, например, для копирования
Далее, собственно, нам в этот файлик нужно ввести команду, которая будет воспроизводиться по средством консоли ( cmd ) при запуске этого файла. В данном случае мы воспользуемся командой xcopy ибо именно она позволяет копировать файлы, каталоги и подкаталоги. Учитывая все пути у нас получится следующая команда:
xcopy C:\test\testcopy C:\test\backup /f /i /y /s
Разъясняю что тут к чему:
- xcopy - это сама команда;
- C:\test\testcopy - это источник, т.е. папка откуда копируются файлы и каталоги;
- C:\test\backup - это результат, т.е. место, куда будут скопированы файлы и каталоги;
- /f /i /y /s - дополнительные параметры синтаксиса для команды xcopy (см.синтаксис ниже по тексту).
Количество строчек может быть любым, т.е. если Вам надо скопировать 100 папок, Вы пишете 100 строчек в одном файле и меняете в них только пути.
Далее, касательно синтаксиса (какие дополнительные параметры есть, какие можно дописать и зачем они нужны).
Какие есть (т.е. те, что я указал в данном примере):
- /f - выводит имена исходных файлов и файлов-результатов в процессе копирования
- /i - создает новый каталог в случае, если тот отсутствует в конечном пути
- /y - перезаписывает файл в случае, если он уже есть
- /s - копирует каталоги и подкаталоги, если они не пусты. Если параметр /s не задан, команда xcopy будет работать только с одним каталогом.
Как по мне - это основной список параметров необходимых для "тихого" копирования, т.е. без лишних вопросов о перезаписи, создания каталогов и прочей шушеры. Касательно остального синтаксиса можно почитать, например, тут.
Далее нам надо сменить формат файла с txt на bat . Делается это следующим образом.
Резервное копирование и восстановление файлов средствами Windows 10
На самом деле, организовать ежедневное автоматическое резервного копирования можно совершенно бесплатно средствами самой Windows. В качестве хранилища резервных копий подойдёт обычная флешка, как самый бюджетный вариант (когда мало файлов), внешний жёсткий диск или выделенный раздел того же жёсткого диска, с которого делается копия. Последний вариант я бы не рекомендовал использовать, ведь если устройство выйдет из строя, вы потеряете и оригинал и резервную копию.
Для примера создадим задание для ежедневного резервного копирования папки "Документы" на флешку. Делается это в «Панели управления», кликнув по ссылке «Архивация и восстановление (Windows 7)». Я постарался наглядно показать весь процесс на скриншотах:
Откроется программа архивации данных, где предлагается настроить резервное копирование. Сперва указываем где собираемся хранить копии. Из списка доступных устройств (флешки или внешние жёсткие диски) выбираем место хранения архивов. Также, копии можно создавать и на сетевых ресурсах – NAS или других компьютерах в сети.
С появлением новых продуктов в области как программного, так и аппаратного обеспечения, а также систем резервного копирования, порой приходится решать непростую задачу по управлению растущими объемами информации, организации потоков движения данных, сокращения времени выполнения заданий резервного копирования и соблюдения бюджетных рамок. Мы рассмотрим решение для резервного копирования и восстановления Symantec Backup Exec 2014, позволяющее реализовать самые разные сценарии организации резервного копирования и обеспечить высокую экономическую эффективность.
Сценарий №1. Метод B2D2T, P2V и Job Stages
Несмотря на стремительное развитие технологий систем хранения данных, ленточные системы хранения до сих пор используются в некоторых организациях как самое дешевое средство долговременного offline-хранения. Однако с ростом объемов данных приходится констатировать, что окна резервного копирования (обычно это ночь или даже все выходные) становится недостаточно чтобы перенести данные на ленточные носители, а единовременный переход с лент на диски приводит к заметным затратам. Наиболее подходящим выходом в такой ситуации будет использование метода backup-to-disk-to-tape (В2D2T). В этом случае резервное копирование выполняется в два этапа, сначала на диск и затем на ленту. Копирование данных на диск происходит гораздо быстрее чем на ленту, поэтому первый этап, как правило, удовлетворяет требованиям к окну резервного копирования, а второй этап выполняется уже без участия сервера-источника. Благодаря продвинутому механизму создания заданий резервного копирования Symantec Backup Exec 2014 можно в рамках одного задания (Job) создать несколько шагов (stage). Для описанной ситуации задание будет содержать 2 шага: РК на диск и дублирование на ленту:
В более общем случае шагов может быть больше, они могут идти последовательно и/или параллельно для реализации самых сложных схем. К примеру, можно создать задание (всего лишь одно!) в котором реализуется схема: РК на диск, затем параллельно происходят шаг преобразования резервной копии в виртуальную машину P2V (physical-to-virtual) и шаг копирования данных на ленточную библиотеку. У каждого шага есть свои настройки места назначения и расписания выполнения.
С аппаратной точки зрения такая система резервного копирования может состоять из сервера резервного копирования и подключенной к нему ленточной библиотеки. В качестве сервера резервного копирования для небольших предприятий оптимально использовать серверы, позволяющие установить в них достаточно большое количество жестких дисков большой емкости, к примеру такие как Fujitsu PRIMERGY RX350S8 или PRIMERGY RX2520M1. Занимая относительно небольшое место в стойке (4U для RX350S8 и 2U для RX2520M1), они могут содержать до 12 дисков емкостью до 4 TB, что позволяет обеспечить емкость дискового хранилища, достаточную для записи полной резервной копии всех данных.
В качестве ленточной библиотеки можно использовать ленточные библиотеки Fujitsu ETERNUS LT. Ленточные библиотеки этого семейства позволяют установить от 1 (в LT20) до 4 (в LT60) накопителей LTO-6 и имеют от 8 до 48 слотов для установки лент.
Сценарий №2. Дедупликация и OST
Со временем становится все сложнее успевать за взрывным ростом объемов данных, т.к. требуются все более емкие и дорогие системы хранения. Чтобы обуздать увеличивающиеся объемы данных резервного копирования Symantec Backup Exec 2014 использует технологию дедупликации. Идея проста: данные разбиваются на блоки, эти блоки сравниваются и сохраняются только уникальные, устраняя их дублирование. Благодаря этой технологии удается в разы сократить объемы хранимых данных, снизить требования к системам хранения и тем самым уменьшить затраты на приобретение новых дисковых массивов. Backup Exec осуществляет глобальную дедупликацию всех данных от любых систем: физических/виртуальных/windows/linux/maс. Сам процесс может выполняться не только на сервере Backup Exec 2014, но и на сервере-источнике – тогда передаются только уникальные блоки, что снижает нагрузку на сеть и уменьшает время резервного копирования. Этот способ хорошо подходит для резервного копирования удаленных серверов с медленным каналом доступа. В этом случае полностью передается и значительно нагружает канал передачи только первая копия данных, все остальные задания нагружают сеть заметно меньше. Если нужно избежать передачи и первой копии, то ее можно сохранить локально рядом с сервером-источником и передать другим способом, например, перенести на внешнем жестком диске.
Так же, дедупликация может выполняться на устройствах поддерживающих технологию Open Storage Technology, например Fujitsu ETERNUS CS800S5. Это целостное решение для хранения резервных копий на дисках, которое поставляется в модели «включи и работай» (appliance). Использование передового алгоритма дедупликации с блоками данных переменной длины и выполнение дедупликации непосредственно в оперативной памяти позволяют достичь высокой эффективности дедупликации (до 10:1 и выше) и высокой производительности (до 11,5 ТБ/час). В зависимости от модели полезная физическая емкость ETERNUS CS800S5 может составлять от 4 TБ до 320 TБ, в любой модели доступны несколько вариантов подключения: 1 и 10 Гбит Ethernet (CIFS/NFS/OST) и 8 Гбит FC (эмуляция ленточной библиотеки, VTL).
В этом случае Backup Exec только управляет процессом резервного копирования, а сами данные передаются напрямую от сервера источника на устройство OST, где и производится дедупликация и хранение данных в дуплицированном виде.
Сценарий №3. Распределенная инфраструктура, ESO, Optimized duplication
В распределенных инфраструктурах, в особенности вида «центр-филиалы», нередко требуется размещение нескольких серверов резервного копирования и систем хранения. Причем ответ на вопрос «Что где размещать и как всем этим управлять?» не всегда очевиден.
Можно в центре разместить несколько серверов (при наличии нескольких площадок) Backup Exec, а в филиалах по одному. При этом один сервер назначается центральным (central administration server – CAS), а остальные подчиненными/управляемыми (Managed), тогда администратор с CAS-сервера сможет назначать задания для всех серверов (CAS входит в состав опции ESO). Более того, дисковые системы хранения, подключенные к Backup Exec-серверам могут совместно использоваться этими серверами как по LAN так и по SAN (SSO входит в состав опции ESO). При необходимости копирования данных между разными площадками (например, копирование резервных копий из филиалов в центр для долговременного хранения), как правило, приходится мириться с невысокими скоростями передачи данных. И снова здесь выручает технология дедупликации, которая реализована еще и в функционале оптимизированного дублирования (optimized duplication) резервных копий между хранилищами Backup Exec. Данные резервных копий не передаются в полном объеме из хранилища источника, а лишь отдельными уникальными блоками дедупликации, которые не содержатся в хранилище назначения.
В самых малых филиалах может и вовсе отсутствовать сервер Backup Exec, достаточно поставить устройство OST и уже можно задавать задания резервного копирования с сервера источника прямо на OST устройство (см. предыдущий сценарий). Технология optimized duplication в этом случае будет также доступна.
Заключение
Symantec Backup Exec 2014 имеет поддержку большого набора как программного обеспечения (ОС и приложения), так и аппаратных средств разных производителей, позволяя решать самый широкий круг задач резервного копирования. В данной статье были рассмотрены лишь некоторые сценарии использования решения Symantec Backup Exec 2014, позволяющие оптимизировать потоки данных, сократить окно резервного копирования, снизить требования к системам хранения и, в результате, повысить экономическую эффективность ИТ-инфраструктуры. В рамках многолетнего успешного сотрудничества компании Symantec и Fujitsu обеспечивают не только технологическую интеграцию решений, но и предоставляют возможность приобрести через канал Fujitsu комплексные решения, состоящие из оборудования Fujitsu и ПО Symantec.
Вопрос резервного копирования волнует каждого специалиста, ответственного за сохранность вверенных ему бесценных служебных документов/баз данных/иных файлов. Для того, чтобы чувствовать себя более уверенно перед лицом различных вероятных форс-мажоров, необходимо периодически выполнять резервное копирование критически важных данных. Не менее актуальна проблема сохранения нажитого непосильным трудом и для домашних пользователей.
Вашему вниманию предлагается простой, но эффективный скриптик, помогающий решать данную проблему.
Имеем исходные условия:
Операционная система: MS Windows XP, 2003 и т.п.;
Объекты резервирования: Папки и файлы, находящиеся на локальных и сетевых дисках в объеме ~200 ГБ;
Бюджет: 0 руб.;
Количество специально-обученных сотрудников для настройки процесса: 1 чел.
Количество специально-обученных сотрудников для обслуживания процесса: 0 чел.
Задача: ежедневное полное резервное копирование данных, хранение заданного количества созданных бэкапов без участия оператора.
На просторах Сети можно найти довольно большое количество различных программ решающих подобную задачу. Согласно задачи и поставленных условий были найдены, установлены и протестированы в условиях приближенных к боевым следующие программы: Cobian Backup (9, 10), Toucan, Areca, FBackup, Backup2Net и программа резервного копирования Samsung Auto Backup (идет в комплекте с одноименным съемным диском).
И так, приступим. Сначала приведу полный текст скрипта без комментариев. Полный разбор с комментариями см. ниже.
@Echo Off
echo %date% %time% ***Start***
SetLocal EnableDelayedExpansion
Set $SRC=list_add.txt
Set $EXC=list_excl.txt
Set $DST=D:\backups
Set $PSW=password
Set $COMPR=1
Set $COPIES=7
C:\"Program Files"\7-Zip\7z.exe a -t7z -mhe=on "%$DST%\files%DATE:~-4%-%DATE:~3,2%-%DATE:~0,2%_%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%.7z" @%$SRC% -scsWIN -p%$PSW% -mx=%$COMPR% -ssw -xr@%$EXC% >> log_7z.log
For /F "Delims %$DST%\%%i"
)
echo %date% %time% ***End***
Результатом ежедневной работы скрипта будет набор бэкапов нужных Вам данных, имеющий приблизительно такой вид:
dir d:\backups\
files2010-07-12_22-00-00.7z
files2010-07-13_22-00-00.7z
files2010-07-14_22-00-00.7z
files2010-07-15_22-00-00.7z
files2010-07-16_22-00-00.7z
Обещанный разбор с комментариями.
@Echo Off :: Отключение вывода текста скрипта
echo %date% %time% ***Start*** ::Вывод даты и времени старта скрипта
SetLocal EnableDelayedExpansion :: Команда изменяет работу с переменными в цикле.
В обычном случае, чтобы определить значение переменной окружения, надо воспользоваться конструкцией %переменная%. Однако, если значение переменной меняется внутри цикла и читается там же, то для корректной работы бат-файла, следует использовать команду SetLocal EnableDelayedExpansion и вместо символа "%", использовать символ "!". Иначе, значение переменной в цикле будет всегда одним и тем же — таким, каким было до входа в цикл.
Далее для успешной работы предлагаемого скрипта необходимо задать следущие входные параметры (переменные):
$SRC=list_add.txt ::файл-список архивируемых данных
$EXC=list_excl.txt ::файл-список исключаемых файлов
$DST=D:\backups ::место хранения резервных копий
$PSW=password ::секретный пароль шифрования архива
$COMPR=1 ::степень сжатия данных архиватором 7zip (1=самое быстрое архивирование, 5=нормальное сжатие, 9=ультра-сжатие, 0=архивация без сжатия)
$COPIES=7 ::количество хранимых резервных копий
Следующая строка запускает архивацию посредством 7-Zip файлов и папок перечисленных в файле list_add.txt, кроме файлов, указанных в файле исключений list_excl.txt
C:\"Program Files"\7-Zip\7z.exe a -t7z -mhe=on "%$DST%\files%DATE:~-4%-%DATE:~3,2%-%DATE:~0,2%_%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%.7z" @%$SRC% -scsWIN -p%$PSW% -mx=%$COMPR% -ssw -xr@%$EXC% >> log_7z.log
Разберем эту строку подробнее:
C:\«Program Files»\7-Zip\7z.exe :: Указывает место расположения исполняемого файла архиватора 7-Zip (точнее его консольной версии);
a :: это команда добавления файлов/папок в архив;
-t7z :: ключ задает тип создаваемого архива = 7z;
-mhe=on :: включает шифрование паролем заголовка архива и имен файлов/папок в архиве;
%$DST%\files%DATE:~-4%-%DATE:~3,2%-%DATE:~0,2%_%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%.7z
Команда динамически формируем полный путь и имя файла архива вида «D:\backups\files2010-07-12_22-00-00.7z», где в имени присутствуют дата и время архивации;
@%$SRC% :: задает имя файла-списка архивируемых данных, вместо %$SRC% скрипт подставляет имя файла;
-scsWIN :: задает кодировку win для файла-списка;
-p%$PSW% :: ключ задает пароль для шифрования архива, вместо %$PSW% скрипт подставляет текстовую строку пароля;
-mx=%$COMPR% :: ключ задает степень сжатия архивируемых данных;
-ssw :: ключ разрешает архивацию файлов открытых приложениями на запись;
-xr@%$EXC% :: задает имя файла-списка данных, исключаемых из процесса архивации, r = означает, что надо исключать и подпапки, вместо %$EXC% скрипт подставляет имя файла;
Эта часть скрипта отвечает за автоматическое удаление уже ненужных архивов данных, в соответствии с количеством заданым переменной $COPIES.
Разберем подробнее. Автоматическое удаление реализуется путем организации цикла, в ходе которого перебирается набор имен (множество) файлов архивов (как оно формируется — см. чуть ниже строку DIR. )
В общем виде наш цикл имеет вид: for /F [«КлючевыеСловаРазбора»] переменная in (МножествоИменФайлов) do команда [ПараметрыКоманднойСтроки]
Ключ /F определяет, что цикл произведет разбор всех элементов множества «МножествоИменФайлов»;
«КлючевыеСловаРазбора» — указывают какие разделители используются между элементами разбираемого множества, в нашем случае — разделителя нет;
%%i — переменная i, которая содержит в каждый шаг итерации текущий элемент разбираемого множества (т.е. очередное имя файла в нашем случае).
Команда формирует набор (множество) имен файлов, содержащихся в папке заданной переменной $DST и соответствующих маске files. -??-??_??-??-. 7z, где знак вопроса обозначает любой символ в данной позиции; ключ /B задает вывод только имен файлов, а ключ /O:-N задает сортировку по имени (N) или в обратном порядке (-N), в нашем случае — порядок обратный.
Набор имеет вид:
files2010-07-01_22-00-00.7z
files2010-06-30_22-00-00.7z
files2010-06-29_22-00-00.7z
Обратите внимание на порядок сортировки элементов!
Do (. ) — в скобках содержится команда(ы), выполняемые в каждой итерации, в нашем случае:
Set /A $COPIES-=1 :: декремент переменной COPIES, выполняющей роль счетчика цикла;
If !$COPIES! LSS 0 DEL "%$DST%\%%i" :: команда проверяет условие $COPIES LSS 0 т.е. $COPIES, если истина, то следует исполнение команды удаления файла-архива с именем текущего элемента, таким образом количество хранимых копий архива не превысит заданное значение, в нашем примере $COPIES=7.
echo %date% %time% ***End*** ::Вывод даты и времени окончания работы скрипта
Также приведу, для примера, содержимое файла-списка list_add.txt:
M:\mail
U:\updates
Z:\Бухгалтерия
Z:\Отдел*
z:\Справка
Z:\Сисадмин
И файла исключений list_excl.txt:
2) Подробная справка по функциям консольной версии 7-Zip прилагается к архиватору.
При планировании стратегии резервного копирования рекомендуется соблюдать правило «3-2-1»:
- 3 — данные должны храниться по меньшей мере в трех экземплярах: в производственной среде и в двух экземплярах резервных копий.
- 2 — для хранения данных должны использоваться два различных типа носителя, например, диск и магнитная лента.
- 1 — по крайней мере одна из резервных копий данных должна храниться за пределами производственной среды, в облачном репозитории или на удаленной площадке.
Veeam Backup & Replication предоставляет возможность архивирования резервных копий. Вы можете создавать несколько экземпляров одной резервной копии виртуальной машины и использовать их для долговременного хранения на дополнительных репозиториях. Дополнительные репозитории могут располагаться как на основной, так и на удаленной площадке. Файл архивной резервной копии имеет такой же формат, что и основной файл резервной копии, поэтому в случае утраты данные могут быть восстановлены непосредственно из архивной копии.
В процессе архивирования Veeam Backup & Replication не просто копирует файлы резервных копий на дополнительные репозитории. Решение извлекает блоки данных, необходимые для создания точки восстановления на момент последней сессии резервного копирования, и копирует их на дополнительный репозиторий. На дополнительном репозитории создается цепочка файлов, состоящая из одной полной резервной копии с последующими инкрементальными точками восстановления.
Архивирование выполняется с помощью заданий. При создании задания необходимо выбрать виртуальные машины, данные которых вы хотите архивировать, дополнительный репозиторий, в котором должен храниться архив, а также задать период хранения архивных копий и другие настройки процесса архивирования. Настройки задания поддерживают схему ротации точек восстановления GFS (Grandfather-Father-Son), которая позволяет обеспечить длительное хранение файлов на дополнительном репозитории.
В отличие от обычных заданий резервного копирования, запуск которых происходит по определенному графику, задания архивирования выполняются циклически, в соответствии с заданными интервалами синхронизации. По умолчанию длина интервала синхронизации составляет один день, однако вы можете задать другой временной интервал.
В начале каждого интервала Veeam Backup & Replication анализирует файлы, хранящиеся в основном репозитории. При появлении новой точки восстановления Veeam Backup & Replication автоматически копирует ее на дополнительный репозиторий. После этого задание архивирования переходит в состояние ожидания и находится в нем до начала следующего интервала синхронизации и появления новой точки восстановления в основном репозитории.
- Основной и дополнительный репозитории, которые будут использоваться в процессе резервного копирования, должны быть подключены к Veeam Backup & Replication.
- В основном репозитории должна присутствовать хотя бы одна точка восстановления для виртуальных машин, данные которых вы планируете архивировать.
Чтобы архивировать резервную копию:
- Откройте представление Backup & Replication .
- На вкладке Home нажмите Backup Copy .
- На шаге Job укажите имя задания архивирования резервных копий и его описание.
- В поле Copy every укажите длину интервала синхронизации данных. В начале каждого интервала синхронизации Veeam Backup & Replication анализирует файлы, хранящиеся на исходном репозитории. При обнаружении новой точки восстановления Veeam Backup & Replication копирует ее на дополнительный репозиторий.
- На шаге Virtual Machines нажмите Add и выберите виртуальные машины, данные которых вы хотите архивировать.
Виртуальные машины можно выбрать из виртуальной инфраструктуры, из резервных копий или заданий резервного копирования, созданных на сервере резервного копирования.
- На шаге Target в списке Backup repository выберите дополнительный репозиторий.
- В поле Restore points to keep выберите количество точек восстановления, которое вы хотите хранить в дополнительном репозитории. По умолчанию Veeam Backup & Replication хранит 7 точек восстановления.
- На шаге Transfer убедитесь, что выбрана опция Direct .
Для передачи данных в процессе архивирования может использоваться прямое соединение между основным и дополнительным репозиториями или соединение с использованием двух WAN-акселераторов. Последний сценарий рекомендуется использовать для архивирования резервных копий в репозитории, располагающиеся на удаленных площадках, или для передачи данных по сети с низкой пропускной способностью.
Сегодня мы узнаем про то, что такое bat файл и заодно создадим один из них.
Думаю, что многие, так или иначе, периодически создают резервные копии (так называемые backup -ы) тех или иных файлов и папок.
Вроде все привычно и делать ничего особо сложного не надо: вставить флешку, открыть " Мой компьютер ", найти что надо скопировать, выделить, тыкнуть мышкой, выбрать "скопировать", перебраться в нужный каталог, тыкнуть "вставить" и тд.
Но зачастую все эти клики и лишние телодвижения несколько утомляют и отнимают ценное время, особенно при частых копированиях одних и тех же данных. В этой статье я расскажу как автоматизировать этот процесс посредством консоли, а точнее написания такой штуки как bat файл .
Меняем формат файла и пробуем его запустить
Жмем " Применить " и " Ок ". Теперь мы можем менять расширение известных системе файлов, а посему направляемся к нашему файлику, жмем правой кнопкой мышки, выбираем " Переименовать " и методом печатания на клавиатуре меняем расширение с txt на bat (на вопрос системы стоит ли это делать отвечаем утвердительно).
В результате мы имеем следующую картину (в вашем случае файлик называется иначе, но имеет тот же формат):
Собственно, все, что нам остается - это запустить этот файл простым кликом по нему мышки.
Если Вы все сделали правильно, то перед Вами промелькнет консоль и по известному пути появится новая папочка с заданным заранее названием и файлами внутри скопированными из известной Вам папки, т.е картина получится примерно следующая:
Ну или несколько другая, в зависимости от того какие пути и названия папок Вы прописывали в команде.
Отредактировать файлик можно сменив ему расширение обратно на .txt и открыв любым текстовым редактором.
Bat файл - что к чему, вводная
Для начала немного о том, что такое bat файл , зачем он нужен и с чем его (или их) едят. Дабы не изобретать велосипед воспользуюсь выдержкой из Википедии:
Пакетный файл (т.е bat файл, от англ. batch file ) — текстовый файл в MS-DOS, OS/2 или Windows , содержащий последовательность команд, предназначенных для исполнения командным интерпретатором.
Пакетный файл — аналог shell script в Unix -подобных операционных системах.
Пакетные файлы полезны для автоматического запуска приложений. Основная область применения — автоматизация наиболее рутинных операций, что регулярно приходится совершать пользователю компьютера.
Примерами таких операций могут служить — обработка текстовых файлов; копирование, перемещение, переименование, удаление файлов; работа с папками; архивация; создание резервных копий баз данных и т. п.
Пакетные файлы поддерживают операторы if и goto (а в системах семейства Windows NT и расширенный оператор for ), что позволяет обрабатывать результаты выполнения предыдущих команд или приложений и в зависимости от этого выполнять дальше тот или иной блок команд (как правило, в случае удачного завершения приложение возвращает 0 в переменной errorlevel; в случае неудачного — 1 или большее значение).
Пакетные файлы в DOS имеют расширение . bat ; для других операционных систем они могут иметь другие расширения — например, . CMD в Windows NT и OS/2 , или .BTM в 4DOS или подобных оболочках.
С теорией разобрались, приступим к, собственно, практике, а именно созданию bat-ника.
Послесловие
Как я уже сказал и Вы сами наверное осознали - использование подобного bat файл 'а зачастую экономит кучу времени, т.е. один раз написал и периодически запускаешь одним кликом и вместо многоминутных тычков мышкой и ползания по всем папкам получаешь автоматизированный процесс копирования.
При желании можно поставить запуск этого bat -ника в определенные дни через планировщик Windows (или другие программы позволяющие это делать) и вообще забыть о проблеме долгих ручных backup 'ов.
Если есть какие-то вопросы или проблемы - спрашивайте. Как всегда помогу чем смогу ;)
PS: Если мне не изменяет память, то это кусочек темы из умных админских книжек, а именно из раздела " Автоматизация администрирования ".. так что можете собой гордится :)
Белов Андрей (Sonikelf) Заметки Сис.Админа [Sonikelf's Project's] Космодамианская наб., 32-34 Россия, Москва (916) 174-8226
Как создать bat файл и использовать его
Давайте подготовим небольшое тестовое поле, чтобы было на базе чего экспериментировать. Откройте мой компьютер и создайте на диске C:\ папочку test . Зайдите в неё и создайте в ней папку testcopy .
Накидайте туда файлов (штук 5-10 ) - фотки, документы и тд и тп (любых короче). Поле для экспериментов готово. Далее нам надо создать, собственно, сам bat файл по нажатию на который у нас будет происходить копирование папки C:\test\testcopy в, скажем, папку C:\test\backup . Создавать вторую папку (которая backup ) не надо - она будет появляться автоматически.
Создать bat очень просто. Жмем правой кнопкой мышки там где хотим его создать (расположение не важно - можно прямо на рабочем столе) и выбираем " Создать " - " Текстовый документ ".
Задаем созданному файлу название и открываем его блокнотом или любым другим текстовым редактором. Т.е. на данный момент мы имеем открытый текстовый файлик, который называется, допустим, копирование.txt .
Читайте также: