Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab1-04.doc
Скачиваний:
43
Добавлен:
12.05.2015
Размер:
260.1 Кб
Скачать

4.3. Команды, используемые в командных файлах

4.3.1. Команда echoи префикс @

Команда echo используется в двух случаях:

  • для управления выводом строк файла;

  • для вывода сообщений на экран дисплея.

Так, команда echo off отменяет вывод на экран следующих за ней команд, а команда echo on–включает режим вывода выполняемых команд на экран. Команда echo строка, где строка не символы "on" или "off"выводит указанную строку на экран во время выполнения командного файла, даже если режим вывода на экран выключен с помощью предыдущей команды echo off.

Префикс "@" в начале строки отменяет вывод на экран только данной строки.

4.3.2. Команда cls

Команда cls очищает экран дисплея. Эта команда задается без параметров.

4.3.3. Командаrem

Команда

rem строка

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

4.3.4. Командаcolor

Команда colorустанавливает цвет текста и фона окна вывода командного файла и имеет следующий синтаксис

colorфт

где ф– шестнадцатеричная цифра, задающая цвет фона, ат– шестнадцатеричная цифра, задающая цвет текста.

Для цветов определены следующие значения:

Код

Цвет

Код

Цвет

0

Черный;

8

Серый;

1

Синий;

9

Светло-синий;

2

Зеленый;

A

Светло-зеленый;

3

Голубой;

B

Светло-голубой;

4

Красный;

C

Светло-красный;

5

Сиреневый;

D

Светло-сиреневый;

6

Желтый;

E

Светло-желтый;

7

Белый;

F

Ярко-белый.

Команда colorбез параметров восстанавливает цвета по умолчанию.

4.3.5. Команды pushd и popd

Команда

pushdимя-папки

сохраняет имя текущей папки и делает текущей папку с заданным именем(для этой папки может быть указан как абсолютный, так и относительный путь).

Команда

popd

делает текущей папку, сохраненную командойpushd.

4.3.6. Метки и команда goto

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

gotoметка

осуществляет переход на заданную метку (метка может находиться как до, та и после команды goto). Если метка в командеgotoне указана, то выполнение командного файла завершается.

4.3.7. Команда if

Команда условного перехода if, имеет формат:

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

Эта команда позволяет в зависимости от истинности или ложности заданного условия соответственно выполнять или не выполнять указаннуюкоманду.

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

  • errorlevel число– условие истинно тогда, когда код завершения предыдущей выполненной программы или команды больше заданного числа или равен ему (код завершения устанавливается программами при окончании их работы, по умолчанию этот код равен нулю);

  • строка-1 == строка-2– условие истинно тогда, когдастрока-1истрока-2полностью совпадают. Если в этих строках имеются символы%0 - %9, то вместо этих символов подставляются параметры командного файла;

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

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

Команда– это любая допустимая команда (в том числеgoto).

В Windows XP введена более удобная расширенная команда if, которая имеет следующий синтаксис:

if [/i] условие (

команда-1-1

команда-1-2

) else (

команда-2-1

команда-2-2

)

Часть команды if, начиная с команды else, может быть пропущена.

В условии сравнения двух строк в расширенной команде if можно вместо символов "==" использовать следующие трехсимвольные сокращения операций сравнения:

  • EQU – равно;

  • NEQ – не равно;

  • LSS – меньше;

  • LEQ – меньше или равно;

  • GTR – больше;

  • GEQ – больше или равно.

Сравнение строк выполняется следующим образом: если все символы в строках равны, строки считаются равными. Если код первый неравный символ первой строки, больше, чем код первого неравного символа второй строки, то первая строка считается больше, чем вторая. В противном случае первая строка меньше второй. Например, строка abc меньше строки abd, но больше строки abb. Если обе строки состоят из цифр, то они сравниваются как числа.

Сравнение строк выполняется без учета регистра букв (заглавные и строчные буквы считаются одинаковыми). Для учета регистра букв необходимо задать опцию /i.

Для расширенной команды if могут быть также заданы дополнительные условия cmdextversion и defined.

Условие

cmdextversion число

выполняется, только если номер внутренней версии, связанный с расширениями командного процессора cmd.exe, равен или больше числа. Первая версия имела номер 1. Номер версии увеличивается на 1 при внесении в расширения командного процессора значительных изменений. Условие с cmdextversion не выполняется, если расширения командного процессора запрещены (по умолчанию они разрешены).

Условие

defined переменная

выполняется, если переменная определена (обычно это переменная окружения).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]