Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лабораторная работа №5
Создание командного файла MS DOS
Цели работы
Общие сведения о командных файлах
Командный файл (batch-файл, файл пакетной обработки) это неформатированный текстовый файл, который содержит одну или несколько команд командной строки Windows и имеет расширение .ВАТ. Командные файлы относятся к числу выполняемых файлов когда вы набираете имя этого файла в командной строке (можно без расширения), команды, записанные в нем, начинают выполняться. То есть командные файлы предназначены для автоматизации выполнения группы команд операционной системы. Что особенно удобно при обслуживании компьютерных систем. Любая команда, которую вы используете в командной строке, может быть включена в командный файл. Кроме того, в интерфейсе командной строки есть ряд команд и конструкций, специально предназначенных для использования в командных файлах. Это команды CALL, CHOICE, REM, ECHO, FOR, GOTO, IF, PAUSE, SHIFT и др. В данном модуле рассмотрены команды и конструкции, обычно используемые в командных файлах.
Следует отметить, что в модуле рассмотрены базовые возможности команд «чистой» MSDOS, в случае интерфейса командной строки современных Windows возможности этих конструкций и команд значительно богаче. Самостоятельно изучите возможности, появившиеся у изучаемых команд и конструкций в Windows 2000 используя встроенную справку.
Замечания по выполнению практической работы
1. При описании формата команд используются следующие правила:
• конструкции, заключенные в квадратные скобки [ ], могут быть опущены. При включении их в команду скобки надо опустить;
• слова, набранные курсивом, означают, что они должны быть заменены соответствующим именем. Если слова, набранные курсивом, заключены в квадратные скобки, то они могут быть опущены;
• вертикальная черта означает, что надо подставить один из вариантов. Например, ON | OFF означает, что надо напечатать ON или OFF, но не оба. Не надо также печатать и вертикальную черту.
2. После создания командного файла необходимо его выполнить. Для этого достаточно в командной строке набрать имя этого файла (без расширения) и нажать клавишу Enter.
3. Рабочим каталогом всегда должен быть каталог TEMP корневого каталога.
Практические упражнения
Проделайте приведенные ниже упражнения, предварительно внимательно ознакомившись с описанием по каждой команде или конструкции. Выполните контрольные задания.
ECHO Назначение - управление выводом сообщений на экран дисплея Формат: ECHO [ON | OFF] ECHO [текст] |
ECHO ON включение вывода на экран протокола выполнения (последовательности выполняемых команд) командного файла; ECHO OFF отключение вывода на экран протокола выполнения командного файла; @ЕСНО OFF отключение вывода на экран протокола выполнения командного файла и самой команды ECHO OFF; ECHO вывод на экран текущего режима команды ECHO (ON или OFF); ECHO text вывод на экран сообщения text; выполняется в режиме ECHO OFF. |
Упражнение 1. |
|
1. Создайте и выполните командный файл К1.ВАТ следующего содержания: CLS ECHO ON DIR 2. Измените командный файл К1.ВАТ: CLS ECHO OFF измененная строка DIR 3. Измените командный файл К1.ВАТ: CLS ECHO измененная строка DIR |
очистка экрана; включение вывода на экран протокола выполнения КФ; выдача на экран содержимого текущего каталога. 4. Измените командный файл К1.ВАТ: CLS @ЕСНО OFF измененная строка DIR 5. Измените командный файл К1.ВАТ: CLS ECHO OFF измененная строка ECHO ---- ПРИВЕТ !!! ---- измененная строка DIR |
Упражнение 2. Создайте в своем рабочем каталоге каталог TEXT и запишите в него файл TEXT1.TXT, который содержит следующую информацию: Фамилия Имя Отчество, номер группы. И файл TEXT2.TXT произвольного содержания |
PAUSE Назначение - временная остановка выполнения командного файла. |
Формат: PAUSE При выполнении этой команды на экран выводится сообщение: Strike a key when ready ... (Нажмите любую клавишу, когда будете готовы) Для продолжения работы следует нажать любую клавишу, за исключением Ctrl+C или Ctrl+Break, так как нажатие этих клавиш прекращает выполнение командного файла. |
Упражнение 3. |
|
1. Создайте и выполните командный файл К2.ВАТ следующего содержания: ECHO OFF CLS ECHO IBM PC ПРИВЕТСТВУЕТ ВАС! TYPE C:\TEMP\TEXT\TEXT1.TXT PAUSE CLS TYPE C:\TEMP\TEXT\TEXT2.TXT PAUSE |
Данный командный файл выдает на экран с помощью команды TYPE файлы TEXT\TEXT1.TXT и TEXT\ TEXT2.TXT. После выдачи на экран каждого файла работа приостанавливается (команда PAUSE) и система ожидает нажатия клавиши для продолжения. |
FOR Назначение - многократное (циклическое) выполнение заданной команды операционной системы для совокупности файлов |
Формат FOR %%переменная IN (набор) DO команда %%переменная набор - множество, включающее в себя один или более файлов. Допускается использование символов "?" и "*"; команда - команда, выполняемая для каждого файла в наборе; переменная счетчик цикла. Возможности FOR в Windows 2000 существенно расширены. Хотите знать больше обращайтесь к встроенной помощи. |
Упражнение 4. |
|
1. Создайте и выполните командный файл К3.ВАТ следующего содержания: ECHO OFF CD C:\TEMP\TEXT FOR %%1 IN (TEXT1.TXT, TEXT2.TXT) DO TYPE %%1 CD C:\TEMP 2. Измените текст командного файла К3.ВАТ: ECHO OFF CD C:\TEMP\TEXT FOR %%1 IN (TEXT?.TXT) DO TYPE %%1 изменение CD C:\TEMP |
Данный командный файл выдает на экран с помощью команды TYPE содержимое файлов TEXT1.TXT и TEXT2.TXT. Данный командный файл выдает на экран с помощью команды TYPE содержимое всех файлов, удовлетворяющих шаблону TEXT?.DOC. |
Упражнение 5. |
|
1. Создайте и выполните командный файл К4.ВАТ следующего содержания: |
Данный командный файл выдает на экран объем доступной операционной системе обычной памяти. |
GOTO Назначение - безусловный переход к отмеченной строке командного файла. |
Формат: GOTO метка метка - имя (длиной до 8 символов) метки, которой обозначается место, в которое оператор GOTO должен передать управление. Метка должна находиться в отдельной строке программы и начинаться с двоеточия. |
Упражнение 6. |
|
Создайте и выполните командный файл K5.BAT следующего содержания: |
Данный командный файл выдает на экран текст файла ТЕХТ1.TXT, до тех пор пока не будет нажата клавиша Ctrl+C. В ответ на сообщение: Terminate batch job (Y/N)? нажмите Y. Обратите внимание, что последняя команда CD никогда не сработает. После выполнения командного файла перейдите в корневой каталог. |
IF Назначение - оператор условного выполнения команды Формат IF [NOT] ERRORLEVEL число команда IF [NOT] string 1==string2 команда IF [NOT] EXIST имя-файла команда |
IF ERRORLEVEL число команда - команда выполняется (условие истинно) в случае, если код завершения (ERRORLEVEL) последней запущенной команды или программы больше либо равен указанному числу; IF string1==string2 команда - команда выполняется, если две указанные строки string 1 и string2 полностью совпадают; IF EXIST имя-файла команда - команда выполняется, если указанный файл существует. Если после IF поставить NOT, то команда будет выполняться в противоположном случае. |
Формальные и фактические параметры Формальные параметры обозначаются %n, где n - цифра от 1 до 9, задающая порядковый номер фактического параметра. Фактические параметры перечисляются через пробел после имени командного файла при его запуске. Первому фактическому параметру присваивается значение %1, второму - %2 и т. д. Если фактических параметров меньше, то все лишние фактические параметры заменяются пробелами. |
|
Упражнение 7. |
|
1. Создайте командный файл К6.ВАТ следующего содержания: |
Данный командный файл выдает на экран содержимое файла, имя которого задается как параметр при запуске batch-файла. При этом анализируется, введен ли параметр. Если параметр не введен, то выдается сообщение и выполнение командного файла прекращается. Вместе с этим определяется, существует ли заданный файл. Выполните командный файл К6.ВАТ первый раз без параметра: К6 а второй раз, задав параметр: К6 ТЕХТ\ТЕХТ1.TXT |
2. Измените командный файл К6.ВАТ так, чтобы при задании параметра - имени файла, который необходимо вывести на экран, - расширение вводить не требовалось. ECHO OFF IF -%1 == - GOTO NO_PARAM IF NOT EXIST TEXT\TEXT%1.TXT GOTO NOT_EXIST ECHO ТЕКСТ ФАЙЛА TEXT%1.TXT TYPE TEXT\TEXT%1.TXT GOTO EXIT :NO_PARAM ECHO ДОЛЖЕН БЫТЬ ЗАДАН ПАРАМЕТР ... GOTO EXIT :NOT_EXIST ECHO ФАЙЛ TEXT%1.TXT HE НАЙДЕН !!! :EXIT Выполните командный файл К6.ВАТ первый раз без параметра: К6 а второй раз, задав параметр номер файла: К6 1 |
3. Создайте командный файл К7.ВАТ, использующий несколько параметров: ECHO OFF CD C:\TEMP\%1 TYPE %2 Данный командный файл выполняет переход в каталог %1, находящийся в каталоге TEMP диска C, и выдает на экран содержимое файла %2. Выполните этот файл, набрав следующую команду: К7 TEXT TEXT1.TXT Здесь формальному параметру %1 соответствует фактический параметр - имя каталога TEXT, %2 - имя файла ТЕХТ1.TXT. |
SHIFT Назначение сдвиг подставляемых параметров командных файлов. |
Формат: SHIFT При выполнении этой команды все значения формальных параметров перемещаются на одну позицию, т.е. %1 примет значение %2, %2 %3 и т.д. |
Упражнение 8. |
|
1. Создайте и выполните командный файл К8.ВАТ следующего содержания: ECHO OFF DEL C:\TEMP\TEXT\TEXT%1.TXT SHIFT DEL C:\TEMP\TEXT\TEXT%1.TXT |
Выполните этот файл, набрав следующую команду: К8 1 2 Данный командный файл удалит файлы TEXT1.TXT и TEXT2.TXT. |
ИТОГОВЫЙ САМОКОНТРОЛЬ
Контрольное задание
а) Создайте командный файл, который удаляет файлы текущего каталога, указанные в виде списка, занесенного в текстовый файл.
б) Создайте командный файл, который удаляет все файлы и каталоги, в заданных каталогах, указанные в виде списка, занесенного в текстовый файл.
Задание *
Создайте командный файл, который выводит на экран только число, равное количеству файлов в указанном в качестве параметра каталоге.