Вторник, 19.03.2024
Справочники по программированию.
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Рейтинг@Mail.ru
Перейти к: навигация, поиск
BAT
Расширение

.bat, .cmdОС семейства Windows NT)

Тип формата

Скриптовый язык программирования

Пакетный файл (англ. batch file) — текстовый файл в MS-DOS, OS/2 или Windows, содержащий последовательность команд, предназначенных для исполнения командным интерпретатором. После запуска пакетного файла, программа-интерпретатор (как правило, COMMAND.COM или cmd.exe) читает его строка за строкой и последовательно исполняет команды. Пакетный файл — аналог cкриптовых файлов командной строки (shell script) в Unix-подобных операционных системах.

Пакетные файлы в DOS имеют расширение .BAT; для других операционных систем они могут иметь другие расширения — например, .CMD в Windows NT и OS/2 или .BTM в 4DOS (англ.) или подобных оболочках.

История[править | править исходный текст]

Поддержка пакетных файлов имелась в MS-DOS с самого начала. Командные интерпретаторы этой системы (а затем и Windows) предлагают два режима работы: интерактивный (когда пользователь непосредственно вводит команды в командной строке и немедленно их исполняет) и пакетный (когда пользователь запускает предварительно записанную последовательность команд). Концепция обоих режимов была почерпнута из интерфейсов командной строки предшествующих ОС (таких как CP/M) и Unix-оболочек.

Командный интерпретатор в MS-DOS (а следом и в семействе Windows 9x) имеет название COMMAND.COM. Наиболее известным пакетным файлом в этих системах является AUTOEXEC.BAT, который автоматически исполняется COMMAND.COM во время загрузки операционной системы.

Семейство Windows NT (2k, XP и далее) не основаны на MS-DOS и включают интерпретатор cmd.exe, который частично совместим с COMMAND.COM. Некоторые старые возможности COMMAND.COM в нём недоступны, однако вместо них появились новые. COMMAND.COM включается в NT-подобные системы для обеспечения лучшей обратной совместимости.

Существуют и другие командные интерпретаторы, разработанные сторонними компаниями и предоставляющие расширенный синтаксис команд для пакетного программирования — например, 4DOS (англ.).

Также, существуют компиляторы пакетных файлов (например, Bat To Exe Converter), преобразующие пакетные файлы в самостоятельные исполнимые программы.

Применение[править | править исходный текст]

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

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

Содержание[править | править исходный текст]

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

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

Пример[править | править исходный текст]

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

:start
@echo off
cls
title Calculator
color 71
echo Enter the equation
set /p exp=
set /a result=%exp%
cls
echo Calculated
echo Your equation: %exp%
echo =%result%
echo.
echo Press any key to continue...
pause>nul
goto start
  1. Метка, создающая цикличность программы.
  2. Выключение эха (вывода выполняющихся строк на экран).
  3. Очистка экрана.
  4. Изменение заголовка окна Windows на строку «Калькулятор».
  5. Изменение цвета шрифта и фона (тёмно-синий на светло-сером).
  6. Вывод строки «Введите уравнение».
  7. Создание переменной exp для хранения ввода пользователя.
  8. Вычисление результата выражения и помещение его в переменную result.
  9. Очистка экрана.
  10. Вывод строки «Вычислено».
  11. Вывод строки «Ваше уравнение» и значения переменной exp.
  12. Вывод строки «=» и значения переменной result.
  13. Остановка выполнения кода до нажатия любой клавиши.
  14. Переход на метку start, выполнение кода начнётся со следующей после метки команды.

См. также[править | править исходный текст]

Ссылки[править | править исходный текст]

Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024
    Бесплатный хостинг uCoz
    Рейтинг@Mail.ru