yandex
Калькулятор ценТарифыАкцииДокументацияО насКарьера в Cloud.ruНовостиЮридические документыКонтактыРешенияРеферальная программаКейсыПартнерство с Cloud.ruБезопасностьEvolutionAdvancedEvolution StackОблако VMwareML SpaceВ чем отличия платформ?БлогОбучение и сертификацияМероприятияИсследования Cloud.ruЛичный кабинетВойтиЗарегистрироватьсяEvolution ComputeEvolution Managed KubernetesEvolution Object StorageEvolution Managed PostgreSQL®Облако для мобильных и веб‑приложенийАналитика данных в облакеEvolution Bare MetalEvolution SSH KeysEvolution ImageСайт в облакеEvolution DNSEvolution VPCEvolution Load BalancerEvolution Magic RouterEvolution DiskХранение данных в облакеEvolution Container AppsEvolution Artifact RegistryEvolution Managed ArenadataDBEvolution Managed TrinoEvolution Managed SparkАналитика данных в облакеEvolution ML InferenceEvolution Distributed TrainEvolution ML FinetuningEvolution NotebooksCurator Anti-DDoSCurator Anti‑DDoS+WAFUserGate: виртуальный NGFWStormWall: Anti-DDoSEvolution TagsEvolution Task HistoryCloud MonitoringCloud LoggingАренда GPUAdvanced Object Storage ServiceAdvanced Elastic Cloud ServerAdvanced Relational Database Service for PostgreSQLРазработка и тестирование в облакеAdvanced Image Management ServiceAdvanced Auto ScalingDirect ConnectCDNCross-platform connectionAdvanced Enterprise RouterAdvanced Cloud Backup and RecoveryAdvanced Data Warehouse ServiceAdvanced Elastic Volume ServiceAdvanced Cloud Container EngineAdvanced FunctionGraphAdvanced Container Guard ServiceAdvanced Software Repository for ContainerAdvanced Document Database Service with MongoDBAdvanced Relational Database Service for MySQLAdvanced Relational Database Service for SQL ServerCloud AdvisorAdvanced Server Migration ServiceAdvanced Data Replication ServiceAdvanced API GatewayAdvanced CodeArtsAdvanced Distributed Message Service for KafkaAdvanced Distributed Message Service for RabbitMQAdvanced DataArts InsightAdvanced CloudTableAdvanced MapReduce ServiceAdvanced Cloud Trace ServiceAdvanced Application Performance ManagementAdvanced Identity and Access ManagementAdvanced Enterprise Project Management ServiceVMware: виртуальный ЦОД с GPUVMware: виртуальный ЦОДУдаленные рабочие столы (VDI)VMware: сервер Bare MetalИнфраструктура для 1С в облакеУдаленные рабочие столыМиграция IT‑инфраструктуры в облако3D-моделирование и рендерингVMware: резервное копирование виртуальных машинVMware: резервный ЦОДVMware: резервное копирование в облакоVMware: миграция виртуальных машин
Поиск
Связаться с нами

BAT-файлы: что это такое, зачем они нужны и как их создавать

BAT-файлы, или, проще говоря, «батники», пригодятся тем, кто хочет автоматизировать выполнение рутинных задач на Windows. Например, создавать бэкапы, удалять временные файлы, активировать программы и приложения.

Инструкции
Иллюстрация для статьи на тему «BAT-файлы: что это такое, зачем они нужны и как их создавать»
Продукты из этой статьи:
Иконка-Evolution Disk
Evolution Disk
Иконка-Evolution Object Storage
Evolution Object Storage
Иконка-Evolution Compute
Evolution Compute

Что важно запомнить

BAT-файл (от английского batch file, переводится как «пакетный файл») — серия последовательных директив, собранных в документ с расширением .bat или .cmd. При запуске такого документа стартует командный процессор Windows и выполняет команды по очереди.


Отметим, что файлы с расширением .bat будут корректно обработаны как относительно новым интерпретатором CMD.EXE, так и «старичком» COMMAND.COM. А с расширением .cmd — окажутся по зубам только CMD.EXE.

Обзор BAT-файлов и их предназначения

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

BAT-файлы сильно упрощают ежедневную работу в Windows, позволяя…

  • …забыть о выполнении скучных рутинных задач типа создания бэкапов, переименования и удаления. Все, что для этого потребуется — прописать простой скрипт с рядом простых команд.

  • …больше не контролировать исполнение скриптов. С BAT-файлами можно создавать и активировать многокомпонентные наборы команд — даже десятки и сотни их будут аккуратно выполняться в заданном порядке без участия пользователя.

  • …не заниматься ручной настройкой системы. Все механические действия, которые нужно выполнять, чтобы не утонуть в океане технического «мусора» Windows — например, временных и ненужных файлов, поврежденных ключей и ярлыков — можно делегировать «батникам». Таким образом текстовые скрипты избавят вас от необходимости регулярной настройки целого ряда системных параметров системы.

Дарим до 20 000 бонусов
Дарим до 20 000 бонусов
4 000 бонусов — физическим лицам, 20 000 бонусов — юридическим

Пишем BAT-файл

Перечень того, что нужно для написания BAT-файла, состоит всего из двух компонентов. Это:

  • компьютер на Windows;

  • любой текстовый редактор: подойдет как бесхитростный «Блокнот», так и Notepad++ или другой редактор с возможностью подсветки синтаксиса — с такими программами управлять длинным списком команд будет проще.

Создание BAT-файла с нуля

С теорией разобрались, идем к практике — пишем простейший «батник». Он позволит вывести сообщение «Hello!» в интерпретатор Windows.

Введем скрипт «Блокноте»:

Blog imageСкрипт для вывода текстового сообщения

Получившийся скрипт сохраним с расширением .bat: в верхнем горизонтальном меню выберем вкладку «Файл», нажмем «Сохранить как…» и дадим название:

Blog imageПроцесс сохранения с расширением .bat

Готово! При запуске в командном процессоре будет отображаться сообщение «Hello!»:

Blog imageСообщение «Hello!», запущенное интерпретатором Windows

Запуск BAT-файла

Проще всего стартануть BAT-файл, два раза кликнув по нему левой кнопкой мыши. Но есть и другие способы. Например, можно нажать на иконку файла правой кнопкой мыши и выбрать «Открыть» или «Запуск от имени администратора» — это пригодится, если нужный «батник» открывается только при наличии у пользователя расширенных прав.

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

Описанные выше способы подойдут, если при запуске «батника» не требуется ответ. Другое дело, когда по итогу выполнения ожидается какое-либо сообщение от системы или числовой результат. В этом случае нужно:

  • перейти в командную строку Windows — набрать сочетание клавиш WIN+R и ввести cmd;

  • зайти в папку с нужным файлом и выполнить его.

Настройка периодического запуска

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

Чтобы использовать «Планировщик», введем комбинацию WIN+R, добавим taskschd.msc и нажмем Enter. Увидим следующее:

Blog image«Планировщик заданий» Windows

Дальше в горизонтальном меню выберем «Действия» и перейдем во вкладку «Создать простую задачу…».

Blog imageОкно создания периодического запуска скрипта в «Планировщике заданий»

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

  • назвать и описать ее;

  • настроить регулярность;

  • выбрать «Запуск», «Отправка» или «Вывод сообщения» в качестве действия;

  • проверить все настройки и активировать собранный скрипт.

Команды и синтаксис

Теперь давайте рассмотрим ключевые для BAT-файлов команды и посмотрим, как добавлять их в интерпретатор, чтобы все работало, как по нотам.


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


Есть несколько ключевых положений, которые помогут при работе с BAT-файлами:

  • Правило 1. Все команды начинаются с новой строки.

  • Правило 2. Использовать можно встроенные и внешние команды.

  • Правило 3. Директории важно указывать в кавычках — так при выполнении скриптов не возникнет ошибок.

  • Правило 4. Если команде нужно подтверждение, можно поставить перед ней ключ /-Y.

  • Правило 5. Чтобы просто запустить команду — без вывода сообщений об отображении в консоль — следует добавить @echo off в начало.

Основные команды

Интерпретатор Windows может обрабатывать команды двух типов:

  • Внешние. Ими могут быть любые файлы с расширениями .exe, .cmd или .bat, которые есть в операционной системе.

  • Встроенные. Те команды, которые добавлены в функциональность интерпретатора изначально.

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

Blog imageКлючевые команды

Объявление переменных

Код внутри BAT-файлов содержит множество динамических элементов, которые могут меняться, не нарушая логику «батника». Существует целый список переменных сред — текстовых переменных Windows, хранящих данные о ряде настроек системы. Они задаются в виде %значение%: например, %USERNAME%, %COMPUTERNAME%, %DATE%, %TIME%. Чтобы их устанавливать, удалять или просматривать используется команда set.

Чтобы объявить переменную с помощью set нужно ввести следующий текст:

Blog imageПример того, как объявить переменную с помощью команды set

Чтобы понять принцип работы скрипта с переменной, давайте разберем каждую строку по очереди:

  • @echo off отключает вывод команд: благодаря ей мы видим только добавленный нами текст;

  • set example=Hello! создает саму переменную и записывает в нее текст (важно не ставить пробелы перед знаком равенства — с ними скрипт не сработает);

  • echo %example% выводит значение на экран;

  • pause удерживает интерпретатор открытым.

Вот, что мы увидим в результате:

Blog imageЧто получится при запуске

Числовая переменная добавляется в скрипт с помощью флага /a:

Blog imageНаписание скрипта с цифровой переменной и результат его выполнения

Комментирование строк

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

Чтобы добавить комментарий, можно использовать либо двойное двоеточие — ::, либо команду rem:

Blog imageТаким образом можно добавить текстовый комментарий

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

Blog imageПример добавления большого комментария

Примеры использования

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

Резервное копирование

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

  • Шаг 1. Первым делом пишем в приложении «Блокнот» команду @echo off — она скроет технические строки о ходе выполнения скрипта.

  • Шаг 2. Если хотим вывести русскоязычный текст, то второй строкой вводим chcp 65001.

  • Шаг 3. Далее добавляем md с директорией — md: "C:/backup/%DATE%". Благодаря этой команде в указанной папке будет легко найти нужный бэкап по дате создания.

  • Шаг 4. Теперь копируем содержимое папки «Документы» с помощью параметра %USERNAME%: xcopy “C:/Users/%USERNAME%/Documents" “C:/backup/%DATE%”.

  • Шаг 5. Далее скачиваем и устанавливаем программу для архивации бэкапов 7-zip, вводим cd и переходим к ней с помощью параметра -tzip: cd “C:/backup/%DATA%" "C:/Program Files/7-Zip/7z.exe" -tzip a %DATE%.zip %DATE%.

Дополнительно добавляем в командную строку уведомления с помощью команды echo — они будут сообщать нам о начале и завершении выполнения скрипта.

В итоге получаем такой скрипт:

Blog imageСкрипт для автоматизированного создания бэкапов

Одновременный запуск нескольких программ

Иногда при работе в ОС Windows нужно запустить несколько приложений одновременно. Для этого можно написать файл со start в сочетании с путем к указанному файлу.

Например, чтобы одновременно запустить браузер Google Chrome, текстовый редактор «Блокнот» и приложение «Службы», нужно ввести такой скрипт:

Blog imageСкрипт для одновременного запуска нескольких приложений

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

Очистка временных файлов

С помощью BAT-скриптов можно автоматически очищать папку с временными файлами Temp — по клику или расписанию. Для этого:

  • сперва удаляем папку Temp с диска через команду rd с параметрами /s и /q;

  • затем создаем Temp заново с помощью mkdir.

Blog imageСкрипт для удаления временных файлов

Обновление IP-адреса

Чтобы вручную обновить IP-адреса в сетевом интерфейсе, проще всего воспользоваться командой ipconfig /renew. Однако при ее выполнении будет отражен длинный вывод. Чтобы перенести его в отдельный текстовый файл, можно использовать rem — она отключает выполнение текущей команды — и указать нужный путь:

Blog imageСкрипт для обновления IP-адреса

Переименование и удаление

Переименовывать файлы можно через команду rename.

Blog imageСкрипт для переименования

При использовании rename важно учитывать, что:

  • автоматическое переименование допустимо только в рамках одного диска или каталога;

  • переименовывать можно только по маске.

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

Blog imageСкрипт для удаления

Советы по использованию BAT-файлов

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

Совместимость с разными версиями Windows

Несмотря на то, что «батники» используются более 40 лет и появились еще при MS-DOS, новые функции в них всегда добавлялись с сохранением обратной совместимости. Например, командный интерпретатор CMD.EXE, добавленный в системы семейства Windows NT — от Windows 2000 и далее — до сих пор поддерживает запросы к файлам и каталогам, созданным по правилам изначального интерпретатора COMMAND.COM.

Настройка BAT-файлов для работы с облачными сервисами и серверами

BAT-скрипты можно использовать для оптимизации работы с облачными сервисами. Принцип такой же, как и при работе с внутренними приложениями Windows. Например, в облаке Cloud.ru с помощью BAT-файла можно заскриптовать копирование бэкапов в объектное хранилище S3.

Заключение

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

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

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

Продукты из этой статьи:
Иконка-Evolution Disk
Evolution Disk
Иконка-Evolution Object Storage
Evolution Object Storage
Иконка-Evolution Compute
Evolution Compute
6 декабря 2024

Вам может понравиться