Возможности командных файлов MS-DOS

Возможности командных файлов MS-DOS

Введение

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

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

C: Cd Del Temp*.* Defrag C: /f – Переход на диск С:. – Переход в корневой каталог. – Удаление временных файлов в каталоге ‘C:Temp’. – Дефрагментация диска С:.

Чтобы не набирать каждый раз эти команды вручную, запишем их в текстовый файл, располагая каждую команду на отдельной строке. Данный файл назовем ‘Compact.bat’ и сохраним его в каталоге, где находятся служебные файлы и команды MS-DOS. Если теперь ввести команду ‘Compact’, тогда автоматически выполнится содержащаяся в нем последовательность команд.

Выполнение командных файлов

1. Для выполнения пакетного файла, находящегося в текущем каталоге или в одном из каталогов, указанных в команде Path файла Autoexec.bat,… 2. Для выполнения пакетных файлов, не находящихся в текущем каталоге или в… (диск:) (путь) имя-командного-файла (пар1 пар2 … парk)

Вызов командных файлов с возвратом. Команда Call

Сall имя-командного-файла (параметры) Команда Call вызывает выполнение командного файла из другого командного файла.… Замечание. В команде Call не допускается перенаправление ввода-вывода (т.е. использования символов ‘<’, ‘>’ и…

Параметры в командных файлах

Общие сведения

Часто приходится выполнять одни и те же команды или последовательности команд MS-DOS с весьма небольшими отличиями. Например, для трансляции программы на Фортране с помощью транслятора фирмы Microsoft надо набирать команды типа:

fl /4I2 /AL /Ox /PP187 /с имя-файла

Чтобы упростить вызов транслятора, можно создать файл Fort.bat следующего содержания:

fl /4I2 /AL /Ox /PP187 /с %1

Здесь символическое имя %1 означает первый параметр, указанный при вызове пакетного файла. Например, если ввести команду ‘Fort Simpson.for’, тогда вместо %1 будет подставлено ‘Simpson.for’ и тем самым будет выполнена команда:

fl /4I2 /AL /Ox /PP187 /с Simpson.for

Символические имена параметров командного файла

Символическое имя %0. В командном файле можно использовать также символическое имя %0, в котором изначально хранится имя выполняемого командного… Использование символа %. Если в командном файле знак процента используется не…

Команда Shift

Пример. Пусть командный файл ‘Dummi.bat’ вызван следующей командной строкой: Dummi а bb сcc Тогда %0 = ‘Dummi’, %1 = ‘а’, %2 = ‘bb’, %3 = ‘ccc’, а параметры с %4 по %9 содержат пустые строки. После однократного…

Переменные среды MS-DOS и работа с ними в командных файлах

Общие сведения

Операционная система MS-DOS имеет специальную область памяти, называемую средой или окружением (от англ. environment), в которой хранится набор символьных строк, доступных во всех программах и командных файлах. Каждая строка в окружении MS-DOS имеет вид:

имя-переменной = значение,

Здесь имя-переменной - это строка символов, без знаков равенства и пробелов, а значение – любая строка символов.

Доступ к переменным среды MS-DOS в командном файле

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

Управление отображением команд на экране

По умолчанию команды пакетного файла выводятся на экран перед выполнением. Если в него вставить команду ‘Echo off’, тогда выполняемые за ней команды… 5.2. Командный префикс @ Можно избежать вывода (дублирования) на экран любой отдельной строки командного файла. Для этого надо поставить в…

Вывод сообщений в командных файлах

Команда Echo

Echo сообщение Указанное сообщение выводится на экран даже тогда, когда режим вывода… Замечания.

Получение звукового сигнала

С помощью команды Echo можно получить звуковой сигнал компьютера. Для этого следует в выводимое сообщение включить символ с кодом 7. Это можно сделать, нажав клавишу Alt и, не отпуская ее, клавишу 7Home в правой части клавиатуры.

Вывод пустой строки

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

Echo.

Точка должна следовать сразу за словом ‘Echo’. Другой вариант - вывести сообщение, состоящее из одного символа с кодом 255, который при выводе на экран никак не отображается.

Вывод сообщений в файл

Для добавления строки с сообщением в конец файла следует применить такую команду: Echo сообщение>> имя-файла Замечание. Если файл не существует, тогда он создается.

Комментарии в командных файлах

Rem любые-символы Пример: Rem Этот текст является комментарием

Паузы в командных файлах

Strike a key when ready ... которое означает: Нажмите любую клавишу, когда будете готовы …

Выполнение команды для набора файлов. Команда For

For %x in (список) dо команда где х- любой символ, кроме ‘0’, ‘1’, …, ‘9’ (это ограничение нужно для того,… список - одно или несколько имен файлов, разделенных пробелами. В именах файлов можно использовать символы ‘*’ и…

Организация переходов в командных файлах

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

Метки

Любая строка командного файла, начинающаяся с символа двоеточия ‘:’, воспринимается как метка. Имя метки определяется набором символов, следующих за двоеточием до первого пробела или конца строки. Остаток строки, начиная с первого пробела, игнорируется.

Переходы. Команда Goto

Для организации переходов по метке существует команда:

Goto метка

Если метка, указанная в команде Goto, отсутствует в командном файле, тогда его выполнение завершается с ошибкой.

Пример:

Goto Tag

. . .

:Tag

REM продолжение выполнения командного файла

В этом примере с помощью команды ‘Goto Tag’ производится переход к строке командного файла, следующей за меткой Tag.

Проверка условий в пакетных файлах. Команда IF

IF условие команда Здесь команда – это любая допустимая команда (в том числе Goto). Эта команда… Строка условие – это одно из приведенных ниже выражений:

Диалог с пользователем в командных файлах. Команда Choice

Choice (/C список-символов) (/Т:символ,число-секунд) сообщение Параметры: /C список-символов – указывает допустимые символы, которые может ввести пользователь в ответ на сообщение. Если данный…