Как создать bat файл в windows 11 или windows 10

Bat файлы – примеры батников (часть 2)

Код часто встречающихся команд:

Пример автоматизированного удаления файлов по типу

del /f /s /q C: *.tmp

Пример пинга. Тестирования работы интернета или доступности сайта

ping ya.ru

Пример подключения сетевого диска

net use NET USE Q: \\Servak\e\Торрент

Net use — это команда подключения

Q — Это название сетевого диска

\\Servak\e\Торрент — это путь до нужной папки. Server — имя сервера, e — имя диска, Торрент — сама папка.

Пример копирования с диска D в сетевую папку

copy D:\backup\*.rar \\server\arhiv\

Удаление файл

Del d:\test.doc

Проверка диска на наличие ошибок

CHKDSK

Перезагрузить ПК

shutdown -r

Выйти из учетной записи пользователя ( актуально в урезанных версиях Win XP)

shutdown -i

Отмена перезагрузки

shutdown /a

Пример вывода на экран сообщения

echo on
msg * Hello
pause

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

ipconfig

Если есть желание поблагодарить за помощь, просьба поддержать просмотрами видео и подпиской на

Подписаться на Теграмм Канал

https://youtube.com/watch?v=videoseries

Или можете помочь проекту материально

Перенаправление результата выполнения команды в документ

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

Чтобы выполнить перенаправление результата работы в специально предназначенный для этого документ, требуется создать файл BAT со следующими строками:

@echo off

echo Start %time%

echo Create test.txt

echo test>C:\test.txt

echo Copy Test.txt to Old_test.txt

copy C:\test.txt C:\Old_test.txt

echo Stop %time%

Необходимо подробнее разобрать, что именно выполняет указанный набор команд.

Первой строкой задается отключение вывода команд. Это позволит получить в лог-документе исключительно результаты осуществления.

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

Третьей строкой указывается на то, что следующей командой будет создаваться текстовый документ test.txt.

Четвертая строка предназначена для того, чтобы непосредственно осуществить поставленную задачу. Следующим этапом производится запись в него одного слова – test.

Пятая строка проводит выдачу в лог-документ пояснение о том, что следующим этапом станет происходить копирование в иное место.

В шестой строке осуществляется непосредственное копирование C:\test.txt в файл C:\Old_test.txt. Можно говорить о том, что происходит создание копии документа, но с присвоением для него нового названия.

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

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

Теперь создадим на диске папку LOG и полный путь к ней станет иметь указанный вид: C:\LOG. Следующим этапом происходит запуск команду установленного типа:

1.bat>C:\LOG\%date~-10%.txt

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

«C:\Program Files\1.bat»>C:\LOG\%date~-10%.txt

C:\Progra~1\1.bat>C:\LOG\%date~-10%.txt

Предполагается, что сразу после начала работы 1.bat в папке C:\LOG произойдет создание документа с названием, которое включает текущую дату. Именно указанный файл и требуется установить в качестве отчета о деятельности пакетного файла 1.bat. Если запустить рассмотренный BAT файл, то предполагается предоставление указанного далее результата:

Start 19:03:27,20

Create test.txt

Copy Test.txt to Old_test.txt

Скопировано файлов: 1.

Stop 19:03:27,21

Чтобы произвести перенаправление результатов работы bat-документа в лог-документа, следует применять специальный символ (>). Написание команды будет иметь представленный ниже вид:

Путь\ИмяФайла.bat>Путь\ИмяЛогФайла.txt

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

Использование комментариев в файлах BAT

Чтобы разбираться в том, что именно осуществляет заданный BAT документ, рекомендуется применять комментарии

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

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

goto start

—————————————

Этот пакетный файл предназначен

для автоматизации рутинных операций,

выполняемых ночью для синхронизации

содержимого корпоративного ftp-сервера

с ftp-серверами филиалов

—————————————

Пакетный файл написан 01/01/2016

Последнее исправление внесено 10/02/2016

—————————————

И т.д.

:start

Подобный вариант обеспечивает запуск пакетного документа, после чего выполняется переход контроля непосредственно команде, которая помещается после start. В некоторых ситуациях будет выгодным использовать иной подход. Например, хорошо подходит применение команды rem или два двоеточия. Они оптимально подходят для небольших по своему размеру комментариев с длиной в одну строчку.

rem Комментарий

:: Комментарий

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

Создание BAT-файла в Windows 10

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

Способ 1: Блокнот

Через классическое приложение «Блокнот» можно без труда создать и наполнить BAT необходимым набором команд.

Вариант 1: Запуск Блокнота

Этот вариант самый распространенный, поэтому рассмотрим его первым.

  1. Через «Пуск» запустите встроенный в Windows «Блокнот».
  2. Впишите нужные строчки, проверив их корректность.
  3. Нажмите на «Файл» > «Сохранить как».
  4. Сперва выберите директорию, где будет храниться файл, в поле «Имя файла» вместо звездочки впишите подходящее название, а расширение, идущее после точки, измените с .txt на .bat. В поле «Тип файла» выберите вариант «Все файлы» и нажмите «Сохранить».
  5. Если в тексте есть русские буквы, кодировка при создании файла должна быть «ANSI». Иначе вместо них в Командной строке вы получите нечитаемый текст.
  6. Батник можно запустить как обычный файл. Если в содержании нет команд, взаимодействующих с пользователем, Командная строка отобразится на секунду. В противном случае запустится ее окно с вопросами или другими действиями, требующими ответа от юзера.

Вариант 2: Контекстное меню

  1. Вы также можете сразу открыть директорию, куда планируете сохранить файл, нажать по пустому месту правой кнопкой мыши, навести на «Создать» и из перечня выбрать «Текстовый документ».
  2. Задайте ему желаемое имя и измените расширение, идущее после точки, с .txt на .bat.
  3. В обязательном порядке появится предупреждение о смене расширения файла. Согласитесь с ним.
  4. Кликните по файлу ПКМ и выберите «Изменить».
  5. Файл откроется в Блокноте пустым, и там вы его сможете наполнить по своему усмотрению.
  6. Закончив, через «Пуск» > «Сохранить» внесите все изменения. Для этой же цели можно использовать сочетание клавиш Ctrl + S.

Если у вас на компьютере установлен Notepad++, лучше воспользоваться им. Это приложение подсвечивает синтаксис, позволяя удобнее работать с созданием набора команд. На верхней панели есть возможность выбрать кодировку с поддержкой кириллицы («Кодировки» > «Кириллица» > «OEM 866»), так как стандартная ANSI у некоторых по-прежнему продолжает отображать кракозябры вместо нормальных букв, введенных на русской раскладке.

Способ 2: Командная строка

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

  1. Откройте Командную строку любым удобным способом, например, через «Пуск», вписав в поиск ее название.

Впишите команду , где copy con — команда, которая создаст текстовый документ, c:\ — директория сохранения файла, lumpics_ru — имя файла, а .bat — расширение текстового документа.

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

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

Для сохранения файла используйте комбинацию клавиш Ctrl + Z и нажмите Enter. Их нажатие отобразится в консоли так, как показано на скриншоте ниже — это нормально. В самом батнике эти два символа не появятся.
Если все прошло успешно, вы увидите уведомление в Командной строке.
Для проверки корректности созданного файла запустите его, как любой другой исполняемый файл.

Не забывайте, что в любой момента можно редактировать батники, кликнув по ним правой кнопкой мыши и выбрав пункт «Изменить», а для сохранения нажать Ctrl + S.

Разыменование переменных

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

Допустим, переменная A содержит ключ:

Записать значение по ключу можно так:

Следующая команда выведет «bbb»:

А вот читать по ключу не так просто. Подстановка переменных не рекурсивна. То есть, нельзя, используя только знак «», подставить «aaa» вместо «A», а затем, «bbb» вместо «aaa».

Тут нам поможет поздняя подстановка. Она тоже не рекурсивна. Однако, используя сразу оба вида подстановок, можно выполнить замену в два этапа:

Выводит «bbb».

Желающие усложнить себе задачу отказом от поздней подстановки, могут разбирать вывод команды set при помощи цикла for:

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

Если убрать параметр команды set, результат не изменится. Но указывая этот параметр, мы оптимизируем алгоритм. Но это не точно.

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

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

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

help

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

help AT

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

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

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

Что такое 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

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

Меняем формат файла и пробуем его запустить

Сначала открываем «Мой компьютер
«, там переходим «Сервис
» — «Свойства папки
» — «Вид
» и снимаем галочку «Скрывать расширение для зарегистрированных типов файлов
«.

Жмем «Применить
» и «Ок
«. Теперь мы можем менять расширение известных системе файлов, а посему направляемся к нашему файлику, жмем правой кнопкой мышки, выбираем «Переименовать
» и методом печатания на клавиатуре меняем расширение с txt
на bat
(на вопрос системы стоит ли это делать отвечаем утвердительно).

В результате мы имеем следующую картину (в вашем случае файлик называется иначе, но имеет тот же формат):

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

Если Вы все сделали правильно, то перед Вами промелькнет консоль и по известному пути появится новая папочка с заданным заранее названием и файлами внутри скопированными из известной Вам папки, т.е картина получится примерно следующая:

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

Часть пятая. Прочие возможности bat-файлов

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

@echo off
chcp 1251
dir >file.txt

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

@echo off
chcp 1251
dir /S "c:\" >"X:\file.txt"

/S заставит батник показать содержимое не только каталога, но и всех подкаталогов.c:\ поможет отобразить содержимое не того каталога, откуда запускается бат-файл, а нужного нам.X:\file.txt сохранит конечный файл со списком содержимого в указанное нами место;

Запуск файлов из командной строки 

Очень часто полезным оказывается возможность запуска объектов из командной строки (в данном случае уже из бат-файлов). Причем как программ, так и других видов файлов (графических изображений, медиафайлов, текстовых документов и т.п.)
К примеру, если в автозагрузку добавить текстовый документ, то при включении ПК после загрузки системы вы его сразу увидите. Либо откроется плеер и будет проигрывать соответствующий трек. (Подробнее про способы добавления файлов в автозагрузку вы можете прочитать в статье: Автозагрузка. Добавление приложений в автозагрузку Windows)
Для того, чтобы это реализовать, нужно просто в теле бат-файла прописать точный путь до необходимого объекта. Например

@echo off
chcp 1251
"c:\Документы\напоминание.doc"

Для системных же программ нужно указать лишь её обозначение.

@echo off
chcp 1251
calc

При выполнении этого батника откроется калькулятор. В данном случае строчку chcp 1251 можно опустить (как и в некоторых ситуациях из примеров выше), однако если уж стандартизировать все наши пакетный файлы, то её можно и оставить, вреда не будет.

Автоматическое создание резервной копии данных

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

Скрипт архивирует папку файлопомойки (\\SERVER\e$ \Exchange)

и папку с данными юзеров (домашнюю Данные пользователей (\\SERVER\e$ \Departments))

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

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

Изменение IP адреса устройства из пакетного файла

Чтобы изменить IP адрес компьютера, следует применять команду netsh. Начать подобные мероприятия можно только после того, как станет определены текущие настройки. Требуется получить IP адрес на данный момент:

netsh interface ip show address

Происходит выдача текущей конфигурации. Нам необходимо узнать название применяемого интерфейса. В качестве примера это может быть FASTNET. Далее будет предполагаться необходимость изменения IP адреса на 172.22.0.33 (шлюз 172.22.0.1, маска 255.255.255.0). Предусматривается следующая строка в пакетном файле для выполнения поставленной задачи:

netsh interface ip set address name=»FASTNET» static 172.22.0.33 255.255.255.0 172.22.0.1 1

Обработка команды повлечет изменение IP адреса у интерфейса FASTNET на 172.22.0.33. Это и является искомой задачей. Указанная команда предлагает весьма широкие возможности в плане работы с сетевыми настройками.

Основные операторы Bat-файла

@ Все выполняемые bat команды выводятся на экран, чтобы убрать лишнее, перед командой ставится «собака». Часто используется с @echo off.
set Задает переменные. Например, setper=c:\windows здесь per присваиваем путь. В переменную можно записать громоздкое значение и указать ее в сценарии, что сделает код компактнее. Если ее содержание изменится, тогда не придется менять везде значения, где предусмотрена эта переменная.
:: Один из двух методов комментирования в bat файле без вывода этой строки на экран.
:LABEL При добавлении к слову двоеточия, создается метка, которая позволяет перейти к разным разделам батника. Метка может носить другое название, LABEL это пример.
CALL Bat команда, вызывающая один пакетный файл в другом. Все параметры, описанные в одном из файлов, могут быть переданы друг другу.
CHOICE Команда выбора.
CLS Очищает содержимое командного интерпретатора, что выведено на экран выше CLS.
ECHO Выводит сообщение на экран. Например, «ECHO Как дела!» выведет «Как дела!». Если не использовать @ECHO off в начале пакетного файла, тогда Вы увидите путь к bat файлу и два сообщения, что является излишним. Вы можете создать пустую строку введите ECHO. с точкой в конце.
EXIT Завершает текущий пакетный сценарий.
GOTO LABEL Используется для перехода к определенной метки, в данном случае к LABEL и исполняет сценарий после нее.
IF Как и в языках программирования batкоманда ifолицетворяет выполнение условия, в зависимости от которого сценарий пойдет по тому или иному пути. С синтаксисом знакомьтесь в справке.
for Цикл, используемый для организации выполнения одних и тех же действий.
PAUSE Если необходимо ознакомиться с результатом сценария, а он выполняется, и окно быстро закрывается, тогда используйте PAUSE. Она позволит посмотреть результат и завершить сценарий по нажатию любой кнопки.
REM Второй способ комментирования. В отличии от :: печатается на экране, если нет конструкции @ECHO off.
SHIFT Изменяет положение пакетных параметров в bat файле.
START Запускает программы, окна и т.д. Имеет множество атрибутов.

Для более детального описания кода bat файлов читайте справку по Windows

Как создать файл с расширением BAT

Итак, как создать bat-файл в Windows 7/10? Очень просто. Для этого понадобится любой текстовый редактор и знание основ командной строки. Можно использовать Блокнот, а ещё лучше Notepad++, так как последний имеет подсветку синтаксиса. Создайте в редакторе новый файл, в меню «Файл» выберите «Сохранить как», дайте будущему скрипту имя, а в выпадающем списке «Тип файла» выберите «Batch file (*bat; *cmd; *nt)».

Если для создания bat-файла захотите использовать Блокнот, расширение нужно присвоить вручную, а в списке «Тип файла» выбрать «Все файлы».

Как видите, создать файл с расширением bat не составляет сложности, есть тут, однако, свои тонкости. В командных файлах нельзя использовать перенос строк, кодировка bat-файла должна быть выставлена UTF-8, если в теле скрипта используется кириллица, кодировку нужно изменить, вставив в положенном месте команду chcp 1251.

Вместо расширения BAT можно использовать CMD, результат выполнения скрипта будет точно таким же.

Применение

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

Многие вирусы написаны в виде пакетного файла, известны даже генераторы вирусов, являющиеся пакетными файлами.

Пакетные файлы поддерживают операторы , goto и for (в системах семейства Windows NT его возможности существенно расширены), что позволяет обрабатывать результаты выполнения предыдущих команд или приложений и в зависимости от этого выполнять дальше тот или иной блок команд (как правило, в случае удачного завершения приложение возвращает 0 в переменной errorlevel ; в случае неудачного — 1 или большее значение).

Пакетные файлы могут содержать как внутренние команды, обрабатываемые непосредственно COMMAND.COM или CMD.EXE, так и обращения к внешним утилитам, существующим в виде отдельных программ (файлов.EXE либо любых других исполнимых модулей).

Пример

Пример пакетного файла, вычисляющего выражения:

@
echo off

:begin

Cls
Title Калькулятор
Color 71

Echo Введите уравнение:

Set /
P exp
=
Set /
A result=%
exp%

Title Вычислено
Echo Ваше уравнение: %exp%

Echo Решение: %result%

Pause>
nul
goto
begin

  1. Выключение эха (вывода выполняющихся строк на экран).
  2. Метка, создающая цикличность программы.
  3. Очистка экрана.
  4. Изменение заголовка окна Windows на строку «Калькулятор».
  5. Изменение цвета шрифта и фона (тёмно-синий на светло-сером).
  6. Вывод строки «Введите уравнение».
  7. Создание переменной exp для хранения ввода пользователя.
  8. Вычисление результата выражения и помещение его в переменную result .
  9. Изменение заголовка окна на «Вычислено».
  10. Вывод строки «Ваше уравнение» и значения переменной exp .
  11. Вывод строки «Решение» и значения переменной result .
  12. Остановка выполнения кода до нажатия любой клавиши.
  13. Переход на метку begin, выполнение кода начнётся со следующей после метки команды.

Примеры команд для bat файлов

Теперь рассмотрим основные команды, которые Вы можете использовать.

Если Вам нужно удалить файл пропишите следующие:

 
 Del d:\file\test.doc

Для того чтобы удалить весь каталог пропишите:

 
 rd d:\file\

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

 
 echo Y| del d:\file\

где,

  • del d:\file\ — это как раз и есть удаление всех файлов;
  • echo Y| — команда подтверждает удаление т.к. если не прописать эту команду, то Вы увидите сообщение о подтверждение удаления – «Продолжить [Y(да)/N(нет)]», и Вам нужно будет каждый раз отвечать на этот вопрос.

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

 
 @echo off
 "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK d:\test\test.rar d:\test 
 IF not EXIST d:\test\123.rar GOTO 1
 IF EXIST d:\test\123.rar GOTO 2
 :2
 "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK  d:\test\123.rar c:\ 
 del d:\test\123.rar 
 :1   
 del d:\test\test.rar
 end

Теперь объясняю, допустим, Вам нужно разархивировать архив test.rar, в котором будет много файлов, но если там окажется файл 123.rar его нужно будет разархивировать в корень диска C, а остальные файлы чтобы остались в том же каталоге не тронутыми.

По порядку, команда @echo off нужна, для того чтобы на экране у нас ничего не отражалось (в принципе, если не нужно можете не писать эту строку). Далее у нас запускается винрар и распаковывает архив test.rar в папку test. Затем идет условие, если в папке test (после распаковки test.rar) у нас не окажется файла 123.rar, то у нас просто выполнение батника переходит к строке :1 и потом просто удаляется файл test.rar за не надобностью т.к. все что нам нужно мы уже распаковали. Но если там оказывается файл 123.rar, то выполнение батника переходит к строке :2, после которой уже идет распаковка файла 123.rar в корень диска C. Другими словами у нас выполняется условие, если есть файл то делать это, если нет файла, делать вот это. Допустим, если не прописать условие в данном примере, то у нас батник выдаст ошибку, тогда когда у нас не окажется файла 123.rar в данной папке.

А сейчас рассмотрим такой пример, допустим, Вам нужно каждый раз перемещать из каталога расположенного на диске D файлы на флешку. Вы каждый раз должны будете заходить мой компьютер диск D, выбирать нужную папку, выделять все файлы из нее и вырезать, а потом только заходить на флешку и вставлять. С помощью батника это делается в один клик (с одним условием, что флешка каждый раз будет, например диском G или тем какой у Вас). Вот пример такого батника:

 
 move "D:\catalog\*.doc" G:\catalognaflehe\

И все файлы с расширением doc, которые находятся в каталоге D:\catalog будут перемещаться на флешку. Теперь хочу сказать, что в батниках можно использовать сценарии (скрипты) при помощи Windows Scripting Host и если нужно, например чтобы выводилось сообщение, после того как файлы скопированы (предыдущий пример) вставьте вот это:

 
 echo var WSHShell = WScript.CreateObject("WScript.Shell"); > %temp%\mes.js
 echo WSHShell.Popup("Файлы Скопированы"); >> %temp%\mes.js
 start %temp%\mes.js
 deltree /y %temp%\mes.js



На самом деле про написание батников можно разговаривать много и в одну статью это, конечно же, не уместить, здесь я показал всего лишь принципы, которые используются при написании bat файлов, так сказать основу. Если Вы хотите узнать больше команд для написания батников, Вы можете легко посмотреть их, набрав в командной строке (Пуск — Выполнить – cmd) команду help, но там, конечно же, не все команды, что можно использовать в батниках. Удачи в написание BAT файлов (батников).

Продолжение темы в статье — BAT файлы – Примеры батников (Часть 2)

Нравится84Не нравится16

Определение

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

Яркие примеры её применения таковы:

  1. Заражение компьютера вирусами или программами-вредителями.
  2. Неполадки в системных файлах.
  3. Восстановление Windows (на сленге пользователей – «винды»).
  4. Корректировка опций в играх.

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

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

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

Понравилась статья? Поделиться с друзьями:
Tehnik Shop
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: