Tipulatoid
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Пакетный файл Пакетный файл (batch file)- текстовый файл в MS-DOS, OS/2 или Windows, содержащий последовательность команд, предназначенных для исполнения командным интерпретатором. После запуска пакетного файла, программа- оболочка (как правило COMMAND.COM или CMD.EXE) читает его строка за строкой и последовательно исполняет команды. Пакетный файл - аналог shell script в Unix-подобных операционных системах. Пакетные файлы полезны для автоматического запуска приложений. Основная область применения - автоматизация наиболее рутинных операций, что регулярно приходится совершать пользователю компьютера. Примерами таких операций могут служить - обработка текстовых файлов; копирование, перемещение, переименование, удаление файлов; работа с папками; архивация; создание резервных копий баз данных и т.п. Пакетные файлы поддерживают операторы if и goto (а современные Windows NT - подобные операционные системы - и оператор for), что позволяет обрабатывать результаты выполнения предыдущих команд или приложений и взависимости от этого выполнять дальше тот или иной блок команд (как правило, в случае удачного завершения приложение возвращает 0 в переменной errorlevel; в случае неудачного - 1 или более высокое значение). Пакетные файлы в DOs имеет расширение .bat; для других операционных систем они могут иметь другие расширения - например .CMD в Windows NT и OS/2, или .BTM в 4DOS или подобных оболочках. Пакетные файлы могут содержать как внутренние команды, обрабатываемые непосредственно COMMAND.COM или CMD.EXE, так и обращаться к внешним утилитам, существующим в виде отдельных программ (.EXE файлов). Данные программы значительно расширяют возможности пакетных файлов. История Программирование пакетных файлов появилось в MS DOS и Windows с самого зарождения этих операционных систем. Командные интерпретаторы этих систем предлагают два режима работы: интреактивный режим (когда пользователь непосредственно вводит команды в командной строке и немедленно их исполняет) и пакетный режим (когда пользователь запускает предварительно записанную последовательность команд). Концепция обоих режимов была почерпнута из различных Unix - оболочек, равно как и из других текстовых интерфейсов командной строки начала 80-х годов ХХ века, таких как CP/M. Коммндный интерпретатор в MS-DOS имеет название COMMAND.COM Эволюция этой ветви пакетного программирования прошла через различные версии MS-DOS к Windows 95, Windows 98 и, наконец, к Windows Me. Наиболее известным пакетным файлом в этих системах явояется AUTOEXEC.BAT, специальный пакетный файл, который исполняется во время загрузки операционной системы. Новые версии Windows - Windows 2000, Windows Xp и Windows Vista основаны не на MS-DOS, а на Windows NT. NT-подобные системы включают интерпретатор cmd.exe, который частично совместим с COMMAND.COM Некоторые старые возможности MS-DOS недоступны, однако вместо них появились дополнительные возможности и команды. COMMAND.COM до сих пор включается в NT-подобные системы для обеспечения лучшей обратной совместимости. Существуют различные другие командные интерпретаторы, разработанные не компанией Microsoft и предоставляющие расширенный синтаксис команд для пакетного программирования. Примером здесь может служить продукт 4DOS. Также имеются несколько различных компиляторов пакетных файлов, превращающие пакетные файлы в исполняемые программы. Качество компиляции у этих продуктов разнится весьма широко. Пример Пример простого пакетного файла rem echo off отключает режим отображения команд на экране. @echo off rem echo. печатает пустую строку. echo. echo Здравствуй, мир! Нажмите любую клавишу для запуска программы Program.exe! pause > nul rem Запуск программы с аргументом, переданным при запуске пакетного файла Program.exe %1 rem Обработка возможной ошибки if errorlevel 1 goto error echo. echo Программа завершила свою работу! goto end :error echo. echo Произошла ошибка при работе программы :end |