Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_users_snazarov_PZ_4.doc
Скачиваний:
3
Добавлен:
09.11.2018
Размер:
74.75 Кб
Скачать

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

В качестве условия обычно используются:

  1. проверка наличия файла. В этом случае в качестве условия записывается фраза exist диск:путь\имя_файла.расш;

  2. проверка кода завершения отдельных программ по значению внутренней переменной DOS с именем Errorlevel. В этом случае в качестве условия записывается фраза “errorlevel значение”. Условие считается истинным, если код завершения равен или больше параметра значение. Командами DOS, устанавливающими коды завершения, являются backup, diskcomp, diskcopy, format, graftabl, keyb, replace, restore, setver, xcopy. Значение переменной errorlevel может формироваться и многими вспомогательными (утилитами) и прикладными программами.

  3. проверка идентичности двух символьных строк. Строка условие при этом записывается в виде

строка_1==строка_2 (двойной знак =)

Предваряя любому из перечисленных условий слово not, можно проверять противоположное условие.

Составим командный файл TEST4.BAT, проверяющий наличие в корневом каталоге диска файла автозагрузки (autoexec.bat) и отображающий его содержание. Обратите внимание на использование команды goto совместно с if.

echo off

cls

cd\

If exist autoexec.Bat goto m1

echo файла AUTOEXEC.BAT на этом диске нет!

goto end

:m1

type autoexec.bat

:end

Другой модификацией этого файла, использующей параметр not, может быть файл TEST5.BAT:

echo off

cls

cd\

If not exist autoexec.Bat goto error

type autoexec.bat

goto end

:error

echo ошибка

:end

Видоизменим файл TEST5.BAT таким образом, чтобы можно было отыскивать и просматривать нужный файл в любом каталоге. Учитывая, что файлы могут иметь большие размеры, превышающие емкость одного экрана, обеспечим поэкранный просмотр файлов. Имя нужного файла будем задавать в качестве параметра в строке вызова файла TEST6.BAT. Например,

>TEST6.BAT proba.txt

Здесь имя искомого файла proba.txt служит фактическим параметром, значение которого должно заменить формальные параметры %1 внутри командного файла. Напомним, что таких параметров строка вызова может иметь от %1 до %9

echo off

cls

if /%1==/ goto error1

rem if not exist autoexec.bat goto error2

type %1|more

goto end

:error1

echo Вы забыли указать имя искомого файла!

goto end

:error2

echo файла %1 на этом диске нет!

:end

Команда For применяется для многократного выполнения отдельных команд. Она позволяет обрабатывать целые группы файлов. Команда имеет форматы:

For %%переменная in (набор) do команда - для строк командных файлов;

For %переменная in (набор) do команда – для режима командной строки (автономного выполнения команды).

Если в команде употреблено %переменная, то к команде добавляются имена файлов из списка.

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

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

(набор) – одно или несколько символьных слов или спецификаций файлов. Спецификация файла имеет вид диск:путь\имя_файла.расш. Допускаются шаблоны групповых операций. Слова и спецификации файлов разделяются пробелами или запятыми. Максимальная длина строки набора – не более 127 символов;

команда – команда DOS, выполняемая для каждого слова или файла из параметра набор.

Задание 9: В созданном каталоге сформируйте 3-4 текстовых файла, различающихся размерами и содержанием. В режиме командной строки затем выполните команду