1.7. Пример пакетного командного файла
Рассмотрим действие пакетного командного файла EXAM.BAT:
(1) @ echo off
(2) cls
(3) c:\
(4) if exist mail.dat goto lab1
(5) echo Файла сообщений не существует
(6) goto lab2
(7) :lab1
(8) type mail.dat
(9) :lab2
(10) cd \user1
(11) for %%N in (*.bak) do del *.bak %%N
(12) if exist %1 copy %1 c:\user1
(13) if exist %2 copy %2 c:\user1
(14) dir c:\user1
(15) pause
(16) cd \foton
(17) ft
Здесь номера в скобках не принадлежат самому командному файлу, а введены для удобства ссылок. В строке (1) запрещается вывод на экран командных строк, в том числе и данной командной строки. Строка (2) задает очистку экрана. В команде (3) задается в качестве текущего каталога основной каталог диска С. Далее проверяется существование файла mail.dat; если таковой существует, то управление передается на метку lab1 и в строке (8) задается вывод на экран файла сообщений. В противном случае выводится сообщение "Файла сообщений не существует" и управление передается на метку lab2. В строке (10) текущим становится каталог user1. Затем в этом каталоге удаляются все файлы с расширением .bak. Команды (12) и (13) служат для проверки существования файлов, соответствующих параметрам %1 и %2. Если они существуют, то копируются в каталог user1, содержимое которого выводится на экран в строке (14).
Далее запускается текстовый редактор ФОТОН. Команда запуска ПКФ EXAM.BAT может выглядеть так:
c:\exam a:\prise1.txt b:\prise2.txt.
Для выполнения в ПКФ различных действий по выбору пользователя рекомендуется использовать функцию ASK программы BE из комплекса Norton Utilities. Формат вызова этой функции следующий:
BE ASK "сообщение" список_символов.
Программа ВЕ выводит указанное сообщение и ждет пока пользователь не введет один из указанных в списке символов. Значение переменной ERRORLEVEL устанавливается равным номеру введенного символа в списке. Например:
BE ASK "Запустить программу PRINTFX [Y/N]?"YN
if ERRORLEVEL 2 goto continue
C:\RED\PRINTFX
: continue.
1.7. Порядок выполнения работы
1. В корневом диске с помощью командной строки создать дерево каталогов как показано на рисунке.
2. В каталоге All с помощью командной строки создать следующие файлы: 1.txt, 2.txt, 3.txt, lab1.pas, lab2.pas, face.bmp, foot.bmp, arm.bmp.
3. В любом текстовом редакторе (например, Блокнот) создать пакетный командный файл lesson1.bat в каталоге All, описать следующую последовательность команд и прокомментировать каждую из них.
3.1.Удалить каталог В3, в каталоге А1 создать подкаталоги В4 и В5 и удалить каталог В2.
3.2.Скопировать файл lab1.pas в каталог А2 и переименовать его в файл lab3.pas.
3.3.Очистить экран от служебных записей.
3.4.Вывести на экран поочередно информацию, хранящуюся во всех текстовых файлах в каталоге All.
3.5.Скопировать все графические и текстовые файлы из каталога All в каталог С2.
3.6.Объединить все текстовые файлы, хранящиеся в каталоге С2, в файл man.txt и вывести его содержимое на экран.
3.7.Скопировать файл man.txt в директорию А1.
3.8.Вывести на экран информацию о структуре каталога All.
Ход лабораторной работы
Изучить теоретический материал, записав основные моменты лабораторной работы
Записать в тетрадь:
Варианты заданий по файлам конфигурации и автозапуска.
Распечатка полученных файлов для каждого участника лабораторной работы.
Вариант задания по созданию ПКФ.
Распечатка полученного ПКФ.
Результаты проверки работы ПКФ с возможными вариантами поведения.
Выводы по результатам выполнения лабораторной работы.
3. Отчет по проделанной работе:
В него должны входить тема работы, цель работы, краткие теоретические сведения: пункт 2.1., пункт 2.2.
4. Контрольные вопросы
Какие функции выполняет BIOS при загрузке MS-DOS?
Какие функции выполняют NSB и SB при загрузке MS-DOS?
Каково назначение файла CONFIC.SYS?
Что произойдет, если перед началом загрузки в дисковод А вставлен несистемный диск?
Чем объясняется необходимость поиска системных файлов на диске А при загрузке MS-DOS?
В каком диапазоне лежит количество буферов используемых MS-DOS?
Какую команду необходимо подать в файле CONFIC.SYS чтобы подключить к системе драйвер ANSI.SYS?
Каково назначение файла AUTOEXEC.BAT?
Какой командой задается формат приглашения DOS?
Что такое ESC-последовательность?
Для чего предусмотрена возможность создания в MS-DOS пакетных файлов?
Какие команды операционной системы могут использоваться в ПКФ?
Как запускаются ПКФ?
Что произойдет при выполнении ПКФ если в командах командного файла допущена ошибка?
Каким образом можно прервать выполнение пакета?
Какими средствами можно создать текст ПКФ?
Каким образом организуется ветвление в ПКФ?
Сколько параметров можно использовать при вызове ПКФ?
Как действует команда CALL?
Каково назначение символа @?