Вывод команд и сообщений на экран

По умолчанию команды пакетного файла выводятся на экран перед выполнением. Если в файл вставить команду echo off, то выполняемые за ней команды не будут выводиться на экран. Для того, чтобы избежать вывода на экран отдельной командной строки, перед текстом команды ставится символ @. Например, чтобы избежать вывода на экран текста echo off, следует записать его в следующем виде: @ echo off. Команда echo также используется для того, чтобы вывести на экран какое-то сообщение, например,

echo Введите группу, в которой учится Иванов

Комментарии

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

@ rem Этот текст является комментарием

Проверка условий

Команда if позволяет задавать условия выполнения команд в пакетном файле. Формат команды:

IF условие команда

команда – это любая допустимая команда, выполняемая, если условие истинно.

условие – это одно из приведенных ниже выражений:

- NOT условие – истинно тогда, когда указанное условие ложно.

- EXIST имя-файла – условие истинно тогда, когда указанный файл существует.

- строка1 == строка2 – условие истинно тогда, когда строка1 и строка2 полностью совпадают. Если в этих строках имеются символы %0-%9, то вместо этих символов подставляются параметры командного файла, например, if -2% == -SSS. В данном примере минус указывается для того, чтобы исключить возникновение ошибки при отработке данной команды, если файл запущен без соответствующего параметра.

Переходы

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

Формат команды перехода: goto имя_метки. Например, goto P.

Метка – это место в программе, куда должно перейти управление. Метка обозначается двоеточием, например : S означает метку с именем S.

Пример создания командного файла

Рассмотрим пример командного файла, который содержит данные об успеваемости студентов по информатике. Пользователь вводит фамилию, на экране отображается оценка за экзамен.

Создать новый файл в текущем каталоге можно командой edit infolevel.bat. Новый файл автоматически откроется во встроенном редакторе MS DOS.

echo Informatitcs grades

(на экран выводится текст Informatitcs grades)

if -%1 == -Petrov goto P

(если первый параметр, указанный при вызове файла infolevel . bat , представляет собой текст Petrov , то управление должно перейти к метке P )

if -%1 == -Ivanov goto I

(если первый параметр, указанный при вызове файла infolevel . bat , представляет собой текст Ivanov , то управление должно перейти к метке P )

goto exit

(если ни одно из указанных выше условий не выполнилось, переходим к метке exit ).

:P

(данное место обозначено меткой P )

echo 5

goto exit

:I

echo 4

goto exit

:exit

После того, как работа файла отлажена, необходимо вставить в файле перед первой строкой команду @echo off.

Запуск командного файла осуществляется в командной строке MS DOS. При этом пишется имя файла и через пробел указываются параметры. В рассмотренном примере в качестве параметра выступает фамилия студента. Пример запуска командного файла:

D : \infolevel.bat Petrov

В результате на экране отобразится текст:

Informatitcs grades

5

В данном примере мы используем только один параметр – фамилия студента, поэтому в условиях проверки ссылка идет только на первый параметр запуска %1:

if -%1 == -Petrov goto P

if -%1 == -Ivanov goto I