Писать bat-файлы может каждый!

Введение

У многих технических писателей время от времени возникает необходимость автоматизировать
обработку файлов. Когда-то речь идет об однократной обработке большого количества файлов,
когда-то о систематическом выполнении одних и тех же действий, например, при использовании
технологий DocBook или DITA). Обработка каждого файла отдельной командой, подаваемой вручную,
не только отнимает время, но и приводит к трудно определяемым ошибкам, возникающим из-за
естественной невнимательности оператора.

В операционной системе MS-DOS и во всех операционных системах семейства Microsoft Windows
простейшим средством автоматизации обработки файлов (и каталогов) служат так называемые
командные файлы. Скажем сразу, что командные файлы — не единственное средство
автоматизации работы пользователя даже из числа встроенных. В операционных системах семейства
Microsoft Windows, начиная с версии 98, имеется еще Windows Script(ing) Host. Кроме того,
никто не запрещает нам использовать в этих целях какой-нибудь интерпретируемый язык, скажем,
Perl, Python или Ruby. Однако перечисленные средства, хотя и мощны, требуют умения
программировать, т.е

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

Важное замечание. Полный справочник или даже добросовестно составленный учебник по командам
MS-DOS и разработке командных файлов должен был бы описывать многочисленные нюансы, связанные
с использованием различных параметров, особенностями работы командных файлов в разных версиях
Microsoft Windows и т.д

и т.п. Предлагаемая статья не претендует на полноту изложения, в частности:

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

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

Как создать BAT файл?

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

Основы создания BAT файлов

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

Базовые команды:

title
Используется для создания заголовка. Отображается в верхней части окна командной строки.

echo
Режим вывода команд на экран. При включении, командная строка выведет на экран сообщение о совершенном действии. При отключении, соответственно, сообщения пропадут

Обратите внимание, что вам придется контролировать статус echo. Если команда активирована на строке 2 и вы решили отключить ее на строке 22, 20 промежуточных строк будут содержать включенный режим вывода команд.

pause
Используется для остановки процесса.

exit
Позволяет закрыть командную строку.

cls
Используется для очистки окна командной строки.

::
Позволяет добавить комментарий к действию пакетного файла

Команда является пассивной и не влияет на общую работу документа.

Представленные выше команды — базовые и присутствуют во всех версиях Windows. Дополнительные команды появляются при установке соответствующего программного обеспечения. Например, если вы хотите автоматизировать задачи браузера Google Chrome, введите соответствующий код под названием chrome.

Используя эту информацию как фундамент для создания BAT файлов, вы можете автоматизировать любой процесс на ПК.

Руководство по созданию BAT файла

В этом разделе мы рассмотрим алгоритм создания пакетного файла, который подойдет для Windows 10, Windows 8.1, Windows 7 и даже для Windows XP.

1. Откройте Блокнот. При желании, воспользуйтесь альтернативой стандартному приложению — Notepad++.

2. С помощью команду echo off временно отключите комментарии, чтобы не засорять окно.

3. Введите заголовок title My First Bat File.

4. Добавьте комментарий This comment will not appear in the command prompt.
Следует отметить, что по умолчанию в командной строке отображается только английский язык. Тем не менее, комментарий может быть на любом другом. Он не будет отображаться в CMD и останется только в блокноте. Комментарий — ваша личная заметка, чтобы не потеряться в коде.

5. Введите команду echo Test file executed.

6. Далее введите I am too lazy to write commands by myself.

7. И, наконец, команда paust, чтобы обозначить завершение процесса.

8. Сохраните документ, изменив формат с .txt на .bat.

Готовый пакетный файл имеет два вида:

В окне блокнота:

В окне командной строки:

Мониторинг систем с помощью BAT файла

В предыдущем разделе мы рассмотрели основы и самый примитивный вариант BAT файла. Хотя его возможности достаточно широки — полный функционал CMD. Давайте рассмотрим, как с помощью пакетного файла можно провести мониторинг систем компьютера.

Отчет об энергопотреблении:

1. Откройте Блокнот и создайте новый документ.

2. Введите команду powercfg /energy и перейдите к следующей строке.

3. Введите команду C:\WINDOWS\system32\energy-report.html.

4. Сохраните документ с названием energyreport.bat.

Отчет о состоянии батареи:

1. Откройте Блокнот и создайте новый документ.

2. Введите команду powercfg /batteryreport и перейдите к следующей строке.

3. Введите команду C:\Windows\System32\battery-report.html.

4. Сохраните документ под названием batteryreport.bat.

Модификация BAT файлов

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

Автоматизация работы и мгновенное получение нужной информации неизменно сэкономит часы вашей жизни. На первый взгляд может показаться “Что тут такого, ведь можно открыть командную строку, ввести код и получить аналогичный результат”. И в своей сути вы окажетесь правы. Но на долгом промежутке времени и при работе в режиме “дедлайн” каждая минута может оказаться решающей.

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

Что необходимо для создания батников на OS Windows

На сегодня существует только один метод для правильного создания, вам потребуется:

  • заготовленный перечень специальных команд Бат-файлов;
  • электронный блокнот, стандартная программа на вашем ПК;

Электронный блокнот

найти и скачать программу «Notepad++», на просторах Интернета (приложение бесплатное, скачивать лучше с официального сайта).

Notepad++

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

Создание папки из BAT файла

Чтобы выполнить поставленную задачу, предполагается несколько доступных вариантов действий. Наиболее простой способ включает в себя применение команды MKDIR или специального сокращенного аналога – MD. Предполагается написание указанной ниже строки в документе:

MD FolderName

Когда такая команда будет осуществлена, предполагается образование новой папки FolderName. Она помещается туда же, где располагается файл BAT. Вовсе не обязательно обеспечивать подобную привязку. Допускается создавать папку в любом указанном пользователем месте, что и внесено в следующую команду:

MD D:\FolderName

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

MD D:\%USERNAME%

Дальнейшее усложнение команды предписывает создание папки с именем юзера на системном диске устройства:

MD %SYSTEMDRIVE%\%USERNAME%

Ниже рассматривается вариант, когда в качестве названия для папки применяется дата на момент выполнения пакетного файла.

set datetemp=%date:~-10%

MD %SYSTEMDRIVE%\%datetemp%

Нужно выполнить рассмотрение того, каким именно образом происходит функционирование набора команд. Первой строкой создается специальная переменная datetemp. Когда работы завершатся, она удаляется, но до этого момента играет важную роль. Предусматривается корректировка значения переменной на протяжении всего времени её существования. В строке осуществляется присвоение значения, представляющего собой десять символов с правой части от системной переменной DATE. Используется формат представленного типа: Дн ДД.ММ.ГГГГ. Сначала слева идет указание недель и оно не представляет интереса. При создании папок открывается большое количество путей, которыми разрешается следовать. Это открывает большие возможности перед пользователями. Если Вы хотите увидеть перечень всех переменных, следует применить команду SET.

Массовая обработка файлов. Команда for

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

for /l %%i in (1,1,10) do echo %%i

Переменная i называется счетчиком цикла. В силу своеобразия синтаксиса
команды for, имя счетчика цикла должно состоять из одной буквы. Причем, если
мы пишем командный файл, то перед именем счетчика цикла надо поставить сдвоенный знак
процента, если же мы просто набираем команду в командной строке, то одиночный.

Логика работы этой команды такова. После слова in указан диапазон изменения
счетчика цикла. В данном варианте команды это тройка чисел: начальное значение счетчика, шаг
счета, предельное значение счетчика. При выполнении команды командный процессор сначала
присвоит переменной i значение 1, а потом на каждом шаге
цикла будет увеличивать его на 1, пока оно не превысит 10.
Очевидно, таких шагов получится десять. Если бы в качестве шага счета мы указали число
2, то цикл выполнился бы пять раз. На каждом шаге цикла выполняется тело
цикла, написанное после слова do. В приведенном примере это команда echo,
которая выводит на экран текущее значение счетчика цикла.

Наверно можно придумать ситуацию, когда что-то подобное на самом деле требуется, но обычно
команда for используется для перебора и обработки файлов. Надо сказать, что в
достаточно простых случаях массовая обработка файлов выполняется с помощью подстановочных
символов. Если, мы хотим всем файлам в текущем каталоге заменить расширение
.htm на .html, мы вводим команду ren *.htm
*.html. Но если то же самое надо сделать не в одном каталоге, а в дереве каталогов,
то без команды for не обойтись. Приведенный ниже командный файл выполняет эту операцию для
всех htm-файлов в подкаталоге website текущего каталога. Точнее, во всем дереве каталогов,
которое находится внутри website.

for /r website %%i in (*.htm) do ren %%i %%~ni.html

Ключ /r указывает на необходимость обхода каталога website и
всех его внутренностей. Если его не указать (но тогда и каталог указывать не разрешается), то
обработаны будут только файлы в текущем каталоге. Диапазоном значений счетчика цикла в данном
варианте команды является множество всех файлов с расширением .htm,
находящихся внутри каталога (точнее, дерева) website. Странная на первый
взгляд запись ~ni означает, что из значения переменной i
требуется выделить только имя файла. В языке команд MS-DOS предусмотрено несколько таких
модификаторов, например, запись ~хi обозначает расширение файла. Все
модификаторы описаны в справке по команде for.

Тело цикла может состоять из нескольких команд, заключенных в скобки.

@echo off
for /r website %%i in (*.htm) do (
   rem Выводим имя файла
   echo %%i
   rem Переименовываем файл
   ren %%i %%~ni.html
)

Проверка условий и выбор вариантов. Команды if и goto

Команда if позволяет выделять в командном файле группы команд, которые выполняются или не
выполняются в зависимости от определенных условий. Для чего это нужно?

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

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

Обратите внимание на такую
особенность синтаксиса: для операции сравнения используется сдвоенный знак равенства. Если
первый параметр оказывается непустым, срабатывает команда goto, которая
«перебрасывает» командный процессор к указанной метке

В данном случае имя
этой метки compile. Обратите внимание, что там, где метка находится, ее имя предваряется
двоеточием, а в команде goto нет. При пустом первом параметре командный процессор переходит к
следующей строке, которая выдает сообщение об ошибке. А потом к следующей, которая
перебрасывает его в самый конец файла к метке с именем finish.

@echo off

rem Проверяем, задан ли параметр
if not "%1"=="" goto compile

rem Если параметр пуст, выдаем сообщение об ошибке
echo Не указано имя проекта хелп-файла
rem и переходим в конец командного файла
rem к метке finish
goto finish

rem Это метка с именем compile
:compile

rem Ниже расположены команды компиляции

rem Путь к компилятору хелп-файлов
set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe"

rem Путь к каталогу, в котором находятся проекты хелп-файлов
set project_path=e:\work\projects\help-projects

rem Вызываем компилятор для обработки конкретного проекта,
rem имя которого передаем в первом параметре
%help_compiler% %project_path%\%1.hpj

rem Это метка с именем finish
:finish

Скажем прямо, предложенный способ проверки параметра не самый удачный.

Во-первых, если пользователь по ошибке укажет в качестве параметра имя несуществующего файла,
командный файл этим удовлетворится и предпримет попытку компиляции. Более правильный способ
— проверить, существует ли такой файл в действительности. Для этого в языке команд
MS-DOS предусмотрено специальное слово exist. Поэтому лучше было бы написать:
if exist %1.hpj goto compile.

Во-вторых, активное использование команды goto (т.н. безусловного перехода) и
меток сильно запутывают код. Технически они ничем не плохи, но отлаживать и сопровождать
командный файл, написанный в таком стиле, довольно неудобно. Поэтому программисты издавна
считают безусловный переход приемом нежелательным. Ниже показан более правильный, с точки
зрения стиля программирования, структурированный вариант, в котором используется конструкция
if…else. Работает она так: если условие истинно, выполняются
команды в скобках после if, а если ложно, то в скобках после else.

@echo off

rem Проверяем, задан ли параметр
if not exist %1.hpj (

   rem Если параметр пуст, выдаем сообщение об ошибке
   echo Такого проекта хелп-файла не существует.
) else (

   rem Ниже расположены команды компиляции

   rem Путь к компилятору хелп-файлов
   set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe"

   rem Путь к каталогу, в котором находятся проекты хелп-файлов
   set project_path=e:\work\projects\help-projects

   rem Вызываем компилятор для обработки конкретного проекта,
   rem имя которого передаем в первом параметре
   %help_compiler% %project_path%\%1.hpj

)

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

Приведем еще один пример работы с проверками. Следующий командный файл создает каталог с
именем help-files (предположим, для выгрузки в него скомпилированных
хелп-файлов). При этом, если каталог с таким именем уже существует (и в нем, вероятно,
находятся старые хелп-файлы, которые не хотелось бы терять: вдруг новые окажутся хуже?),
командный файл присваивает ему расширение bak. Но если каталог help-files.bak
уже существовал, то командный файл его удаляет (будем считать, что одной резервной копии нам хватит).

if exist help-files.bak rd help-files.bak
if exist help-files ren help-files help-files.bak
md help-files

Комментарии

Большое спасибо за статью! Именно то, что мне было нужно.

Офигеть! Полезные советы! Спасибо!

Спасибо большое. Давно искал.

Крутяк, добавлю в закладки.

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

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

Одна вертикальная черта | перенаправляет вывод предыдущей команды следующей. Например type «file1.txt» | find ”string1″ ищет в файле строку содержащую «string1» и выводит ее. Этот вывод можно отправить через | на следующую команду. Или, используя пример: (type «file1.txt» | find ”string1″ >nul) && (команды если строка найдена) || (команды если строка не найдена)

При одной вертикальной линии команды выполняются всё равно последовательно.

Bat-файлы Windows являются удобным способом выполнения различных задач на ПК, которым активно пользуются компьютерные умельцы. Они позволяют автоматизировать повседневные задачи, сократить время их выполнения и превратить сложный процесс во что-то посильное рядовому пользователю. В данной статье представлены базовые возможности командных файлов и рекомендации по самостоятельному их написанию.

Чем открыть файл в формате BAT

Расширение BAT представляет собой системный файл ОС MS-Dos или Windows, который применяется в качестве исполнительного в Command Prompt (cmd.exe).

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

По своей структуре, расширение представляет собой типовой текстовый файл, сохраненный в формате BAT.

В основе описания файла заложен скриптовый язык программирования, выполняющий команды BAT файла в ОС MS-Dos и Windows.

Самый распространенный пример данного формата на платформе MS-DOS – это AUTOEXEC.BAT. Он начинает загрузку системы и инициализирует все ее компоненты. Для того чтобы инициировать исполнение данного формата, его имя достаточно лишь ввести в командной строке. Набор стандартных BAT-файлов, необходимых для корректного функционирования ОС, как правило, поставляется в комплекте с операционной системой. Однако пользователь может отредактировать такой файл вручную с помощью обычного тестового редактора, добавив или убрав какие-либо исполнительные программы. Строго не рекомендуется осуществлять форматирование расширения неопытному пользователю. Это может поставить под угрозу функционирование всей операционной системы.

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

Также не следует открывать неизвестные BAT файлы, так как они могут быть носителями вредоносного программного кода.

Программы для открытия BAT файлов

BAT расширение неприхотливо к платформе конкретной операционной системы и одинаково успешно может функционировать на базе ОС Windows, Mac и Linux.

Чтобы открыть BAT файл в ОС Windows принято использовать:

  • утилита коммандной строки Microsoft Windows;
  • любой текстовый редактор.

Если при открытии расширения BAT возникает ошибка, причины могут заключаться в следующем:

  • поврежден или инфицирован файл;
  • файл не связан с реестром ОС (выбрано некорректное приложение для воспроизведения или не произведена инсталляция конкретного плагина);
  • недостаточно ресурсов устройства или ОС;
  • поврежденные или устаревшие драйвера.

Конвертация BAT в другие форматы

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

Почему именно BAT и в чем его достоинства?

BAT расширение представляет собой системный файл ОС MS-Dos или Windows, содержащий набор исполнительных команд. Оно не является популярным среди обычных пользователей, а востребовано сугубо в среде системных администраторов и опытных программистов.

Формат поддерживает пакет (набор) исполнительных команд, которые при загрузке BAT файла выполняются в интерактивном режиме.

Другие похожие форматы и расширения файлов

Применяемые в документах BAT команды

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

Предусматривается несколько вариантов получения сведений:

help

Если осуществить ввод указанной команды, можно получить полный список существующих команд и небольшие описания к ним. Разрешается обеспечение более детальных сведений. Чтобы можно было их получить, требуется ввести help и название интересующей команды. В качестве примера рекомендуется указать возможность получения данных по АТ:

help AT

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

start название_документа.txt

Если осуществить запуск подобной команды, то произойдет открытие название_документа.txt. Важным моментом является тот факт, что пакетный файл окончит свою деятельность. Использование подобного метода является оправданным в тех случаях, когда объемы лог-файла невелики.

Конструктивные особенности и используемые материалы

Современный батник – это приталенная мужская или женская кофта с застежкой в виде планки и воротником с острыми концами. Они невероятно удобны при носке и отлично сочетаются с разнообразными юбками, брюками или джинсами.

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

Размерный ряд батников очень широк: от самых маленьких (XS, S) до больших (XXL, XXXL). Поэтому и мужчины, и женщины могут подобрать себе модели по вкусу, размеру и толщине кошелька. Удачное сочетание цветов и фактуры материала придаст дополнительную изюминку вашему образу и поможет скрасить недостатки фигуры.

Что такое bat-файлы и зачем они нужны?

Пользователи, которые часто работают с командной строкой Windows и периодически выполняют однотипные действия, используют в своей работе файлы сценарии или bat-файлы. Конечно, при этом необходимо хотя бы поверхностно знать команды командной строки и синтаксис их написания. Говоря о командной строке, многие даже не представляют насколько широкими возможностями она обладает, а при использовании bat-файлов возможности пользователей могут быть также существенно расширены.

 
Что такое bat-файлы?

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

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

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

 
Как создать bat-файлы?

Предположим, вам необходимо создать «батник», который будет запускать определенные программы в заданной последовательности. При этом чтобы не создавать на рабочем столе несколько ярлыков и запускать каждый из них мышкой удобно создать один единственный bat-файл и запускать его, а он уже в свою очередь запустит все те приложения.
Для создания bat-файла вам понадобится простой текстовый редактор, традиционно в системе Windows пользуются Блокнотом. Запустите текстовый редактор и впишите в него несколько строк, которые соответствуют синтаксису команд командной строки.

Например, для запуска приложений:

start explorestart calcstart iexplore

После чего сохраните этой файл на Рабочем столе с понятным для вас именем, например «Запуск прог». Расширение сохраненного файла при этом надо изменить с TXT на BAT. Если у вас не отображается расширение файла, то необходимо включить отображение расширений файлов. Сделать это можно в настройках параметров папки через Панель управления или в самом проводнике. После того, как вы поменяете расширение, сделайте пробный запуск сохраненного файла. При выполнении указанного выше примера произойдет запуск сразу трех программ: Проводника, Калькулятора и Internet Explore.

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

Во время тестирования работы вашего «батника», вы можете столкнуться с появлением ошибок в работе или какая-то команда не будет выполняться, но чтобы посмотреть на каком этапе произошла ошибка, вам необходимо, чтобы окошко выполнения команд не исчезало. Это можно сделать очень просто. В конце вашего кода вставьте строку PAUSE. Выполнение данной команды позволит пользователю видеть окно командной строки даже после завершения всех команд. При этом есть возможность прокрутить последовательность выполняемых команд и сообщений программы, в случае появления ошибок в выполнении одной из команды. Нажатие любой клавиши приводит к тому, что окно командной строки будет закрыто. Найдя ошибку в синтаксисе, вы сможете ее исправить и после этого удалите строку PAUSE из bat-файла и проверьте окончательно стабильность срабатывания вашего bat-файла.

Посмотрите ещё :

  • Как сменить путь в командной строке

  • Проверка и восстановление системных файлов Windows 7/8

  • Total Commander

  • Ошибка 720 при подключении VPN-соединения

  • Создание ярлыков быстрого вызова служб Windows 8

Категория: Полезные статьи

Выполнение резервных копий в автоматическом режиме

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

rem *******************

rem задаём жесткий диск, где лежат папки для архивирования и винт куда будем бэкапить

rem *******************

SET DRIVE1ST=d:

SET DRIVE2ND=e:

rem *******************

rem пароль на архив

rem *******************

SET PASSWD=qmsdhgsdfgsdfhdsfhsdhf

rem *******************

rem если копировать для надёжности куда-нибудь на сетку

rem *******************

rem SET COPYTO=\\shpakk\c$\!backup

rem ********************

rem *** Проверим путь назначения архива

rem ********************

%DRIVE1ST%

if not exist \!backup md \!backup

if not exist \!backup\Departments md \!backup\Departments

if not exist \!backup\Exchange md \!backup\Exchange

if not exist \!backup\MEDEA_rdisk md \!backup\MEDEA_rdisk

cd \!backup

rem ******************************

rem *** Backup \\SERVER\e$\Exchange

rem ******************************

SET DIRNAME=Exchange

SET FILENAME=SERVER_Exchange

SET SOURCEDIR=e:\Exchange

rar a -r -m5 -dh -x*.mp3 -x*.fcd -x*.avi -x*.zip -x*.rar -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.*

if not exist %DIRNAME%\%FILENAME%_new.rar goto next2

del %DIRNAME%\%FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar

copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME%

:next2

rem ***************************

rem *** Backup \\SERVER\e$\Users

rem ***************************

SET DIRNAME=Departments

SET FILENAME=SERVER_Departments

SET SOURCEDIR=e:\Departments

if not exist %DIRNAME%\%FILENAME%_new.rar goto next3

del %DIRNAME%\%FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%_4.rar %FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%_3.rar %FILENAME%_4.rar

ren %DIRNAME%\%FILENAME%_2.rar %FILENAME%_3.rar

ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%_2.rar

:next3

rem *******************

rem это если архив будет большим — кусками бить -v357888k

rem *******************

rem rar a -r -m5 -v357888k -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%

rem *******************

rem архивирование пошло, не берём мультимедиа файлы

rem *******************

rar a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%

goto next4

:next4

rem **********************************

rem *** Create repair disk on \\SERVER

rem **********************************

SET DIRNAME=MEDEA_rdisk

SET FILENAME=MEDEA_rdisk

SET SOURCEDIR=%windir%\repair

%windir%\system32\rdisk.exe /s-

rar a -r -m5 -dh -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.*

if not exist %DIRNAME%\%FILENAME%_new.rar goto next5

del %DIRNAME%\%FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar

ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar

copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME%

:next5

В итоге имеем 3 папки: Departments, в ней:

SERVER_Departments_2.rar — 2х дневной давности

SERVER_Departments_3.rar — 3х дневной давности

SERVER_Departments_4.rar — 4х дневной давности

SERVER_Departments_new.rar — НОВЫЙ

SERVER_Departments_old.rar — СТАРЫЙ Exchange

Так как архивируем обменник — он нам сильно то и не нужен храним только сегодняшний и вчерашний архивы

SERVER_Exchange.rar

SERVER_Exchange_old.rar ну и систему на всякий в папке

SERVER_rdisk

SERVER_rdisk.rar

SERVER_rdisk_old.rar

Что такое bat-файл, зачем он нужен, и как правильно его запускать

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

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

С целью ускорить достижение конечного этапа основной задачи, нужно сократить трату времени на промежуточные задачи. Именно для этого и было разработано расширение *.bat, состоящее из пакетных данных, задача которого заключалась в последовательной активации каждого из них. Необходимо только задать перечень очередности выполнения заданий.

bat файл состоит из пакетных данных, задача которого заключается в последовательной активации каждого из них

Для работы с ними используется командная строка. Именно благодаря ей, можно спокойно прописать последовательность действий. Быть Гуру в этой сфере не обязательно, сгодится и поверхностное знание по написанию, и понимание синтаксиса.

Очень важно правильно запустить программу. Это ваш гарант на успешное выполнение предстоящей работы в целом, несмотря на то, работаете вы с обычными файлами, с системными данными операционной системы, или архивами (*.rar, *.zip и другими)

Запуск от имени администратора

Выполнение этой задачи требует соблюдения двух основных правил:

На компьютере всегда использовать только учетную запись – «Администратор.

Использование уч. записи – «Гость» — для этого не подходит! Проверить можно, зайдя в «Панель управления», потом выбрав – «Учетные записи пользователей», затем – «Управление» или «Изменение параметров». Результат должен быть таким же, как на скриншоте.

Выбор нового типа учетной записи

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

Запускать «Батники» строго через контекстное меню.

Левой кнопкой мыши выделяете иконку с расширением «бат», затем вызываете контекстное меню правой кнопкой, и нажимаете на запуск от имени «Администратора».

Запуск bat-файла через контекстное меню

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

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

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

Adblock
detector