Читайте данную работу прямо на сайте или скачайте

Скачайте в формате документа WORD


Командные файлы

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ

КАФЕДРА ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНОЙ АППАРАТУРЫ

FONT SIZE=2> B>FONT FACE="Times New Roman" SIZE=7>

ОТЧЕТ

FONT SIZE=2> FONT SIZE=6> FONT FACE="Times New Roman" SIZE=6>

по лабораторной работе Командные файлы

Дисциплина Системное ПО ЭВМФ

FONT SIZE=2> I>FONT SIZE=6> FONT FACE="Times New Roman" SIZE=5>

Выполнили студенты группы С-45.

FONT SIZE=5> FONT FACE="Times New Roman" SIZE=5>

Преподаватель проф. Зарудный Д. И.

FONT SIZE=2> B>FONT SIZE=6> FONT FACE="Times New Roman" SIZE=6>

Москва 1998

FONT SIZE=2> B>FONT FACE="Times New Roman" SIZE=6>

Оглавление

B>FONT SIZE=4> OL> FONT SIZE=5>

LI> FONT FACE="Times New Roman" SIZE=5>Введение

LI> Рабочее задание

LI> Краткие сведения о командных файлах

FONT SIZE=5>

LI> FONT FACE="Times New Roman" SIZE=5>Практическая часть

OL>

LI>Тексты программ

LI>Протокол работы программ

B>

LI> Заключение

FONT SIZE=5> FONT SIZE=2> B>FONT SIZE=6>

1. FONT FACE="Times New Roman" SIZE=6>Введение

FONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>

Командные файлы - средство FONT FACE="Arial" SIZE=5>MS-DOS,FONT FACE="Arial" SIZE=5> позволяющее автоматизировать часто выполняемые действия пользователя. Командные файлы могут выполнять довольно сложную последовательность действий. Основой командных файлов служат команды FONT FACE="Arial" SIZE=5>MS-DOS.

B>FONT FACE="Times New Roman" SIZE=6>

2. Рабочее задание

OL> FONT FACE="Arial" SIZE=5>

LI>Создать командный файл FONT FACE="Arial" SIZE=5>BATCH1.BATFONT FACE="Arial" SIZE=5>, выполняющий действия:

OL>

LI>Отключение режима отображения на экране выполняемой команды

LI>Вывод на экран: "Копирование и даление файла"

LI>Создание на диске FONT FACE="Arial" SIZE=5>A: FONT FACE="Arial" SIZE=5> каталога FONT FACE="Arial" SIZE=5>DIR1, FONT FACE="Arial" SIZE=5>и в нем создание каталога FONT FACE="Arial" SIZE=5>DIR2

FONT FACE="Arial" SIZE=5>

LI>Копирование файла с именем FONT FACE="Arial" SIZE=5>TEXT1.TXTFONT FACE="Arial" SIZE=5> из каталога FONT FACE="Arial" SIZE=5>C:ALPHABETTAGAMMA FONT FACE="Arial" SIZE=5>в файл с именем FONT FACE="Arial" SIZE=5>TEXTNEW.TXTFONT FACE="Arial" SIZE=5> в каталоге FONT FACE="Arial" SIZE=5>A:DIR1DIR2

FONT FACE="Arial" SIZE=5>

LI>Удаление исходного файла

LI>Вывод на экран: FONT FACE="Arial" SIZE=5>УFONT FACE="Arial" SIZE=5>Файл скопирован и даленFONT FACE="Arial" SIZE=5>Ф

FONT FACE="Arial" SIZE=5>

LI>Пауза до нажатия клавиши

LI>Создать командный файл с именем FONT FACE="Arial" SIZE=5>SUMMA.BATFONT FACE="Arial" SIZE=5>, выполняющий действия:

OL>

LI>Вывод на экран FONT FACE="Arial" SIZE=5>УFONT FACE="Arial" SIZE=5>Объединение и переименование файловFONT FACE="Arial" SIZE=5>Ф

FONT FACE="Arial" SIZE=5>

LI>Объединение содержимого файлов FONT FACE="Arial" SIZE=5>ANEW.PAS FONT FACE="Arial" SIZE=5>иFONT FACE="Arial" SIZE=5> BNEW.PASFONT FACE="Arial" SIZE=5>, находящихся в каталоге FONT FACE="Arial" SIZE=5>C:D1FONT FACE="Arial" SIZE=5>, в файл FONT FACE="Arial" SIZE=5>CNEW.PAS FONT FACE="Arial" SIZE=5>в каталоге FONT FACE="Arial" SIZE=5>C:D2

FONT FACE="Arial" SIZE=5>

LI>Вывод содержимого файла FONT FACE="Arial" SIZE=5>CNEW.PAS FONT FACE="Arial" SIZE=5>на экран

LI>Ожидание нажатия клавиши

LI>Переименование файлов FONT FACE="Arial" SIZE=5>ANEW.PAS FONT FACE="Arial" SIZE=5>и FONT FACE="Arial" SIZE=5>BNEW.PAS FONT FACE="Arial" SIZE=5>в FONT FACE="Arial" SIZE=5>AOLD.PAS FONT FACE="Arial" SIZE=5>иFONT FACE="Arial" SIZE=5> BOLD.PAS FONT FACE="Arial" SIZE=5>соответственно.

LI>Вывод на экран: "Задание выполнено"

LI>Создать командный файл с именем FONT FACE="Arial" SIZE=5>_EXIST.BATFONT FACE="Arial" SIZE=5>, выполняющий действия:

OL>

LI>Вывод на экран Копирование файла в случае его отсутствия на дискете

LI>В случае отсутствия файла FONT FACE="Arial" SIZE=5>SIMP.FOR FONT FACE="Arial" SIZE=5>на диске FONT FACE="Arial" SIZE=5>AFONT FACE="Arial" SIZE=5>: скопировать его туда из каталога FONT FACE="Arial" SIZE=5>C:FOR FONT FACE="Arial" SIZE=5>и вывести на экран: "Файл FONT FACE="Arial" SIZE=5>simp.for FONT FACE="Arial" SIZE=5>скопированFONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>на диск FONT FACE="Arial" SIZE=5>A:"

FONT FACE="Arial" SIZE=5>

LI>Если файл FONT FACE="Arial" SIZE=5>SIMP.FOR FONT FACE="Arial" SIZE=5>уже есть на диске, вывести на экран: "Файл FONT FACE="Arial" SIZE=5>simp.for FONT FACE="Arial" SIZE=5>уже есть на дискете"

FONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>

LI>Создать командный файл с именемFONT FACE="Arial" SIZE=5> BATCH4.BATFONT FACE="Arial" SIZE=5>, выполняющий различные действия в зависимости от переданного параметра в строке вызова:

OL>

LI>Создание каталога FONT FACE="Arial" SIZE=5>A:MYDIR FONT FACE="Arial" SIZE=5>и копирование в него всех FONT FACE="Arial" SIZE=5>.com FONT FACE="Arial" SIZE=5>и FONT FACE="Arial" SIZE=5>.exe FONT FACE="Arial" SIZE=5>файлов с диска FONT FACE="Arial" SIZE=5>C:

FONT FACE="Arial" SIZE=5>

LI>Создание в каталоге FONT FACE="Arial" SIZE=5>A:MYDIR FONT FACE="Arial" SIZE=5>каталога FONT FACE="Arial" SIZE=5>NEWDIR FONT FACE="Arial" SIZE=5>и копирование в него всех FONT FACE="Arial" SIZE=5>.comFONT FACE="Arial" SIZE=5> файлов с диска FONT FACE="Arial" SIZE=5>C:

FONT FACE="Arial" SIZE=5>

LI>Вывод на экран содержимого каталога A:MYDIR

LI>Удаление каталога FONT FACE="Arial" SIZE=5>A:MYDIRNEWDIR

FONT FACE="Arial" SIZE=5>

LI>Удаление каталога FONT FACE="Arial" SIZE=5>A:MYDIR

B>FONT FACE="Times New Roman" SIZE=6>

3. Краткие сведения о командных файлах

FONT SIZE=5> FONT FACE="Arial" SIZE=5>

Командный файл состоит из последовательности строк, в каждой из которых может находиться либо вызов программы, либо вспомогательные команды. Большинство строк командного файла обрабатываются FONT FACE="Arial" SIZE=5>DOSFONT FACE="Arial" SIZE=5> так же, как если бы они вводились пользователем в командной строке. Вспомогательные команды служат для правления ходом работы командного файла. Наиболее распространенные вспомогательные команды:

B>FONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>

ЕСНО

FONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>

При формате вызова B>FONT FACE="Arial" SIZE=5>ECHO OFF FONT FACE="Arial" SIZE=5>отменяет вывод строк командного файла на экран при выполнении. Команда B>FONT FACE="Arial" SIZE=5>ECHO ON FONT FACE="Arial" SIZE=5>возобновляет их вывод на экран. Большинство командных файлов начинаются со строкиB>FONT FACE="Arial" SIZE=5> @ECHO OFF. FONT FACE="Arial" SIZE=5>Символ "B>FONT FACE="Arial" SIZE=5>@FONT FACE="Arial" SIZE=5>" служит для отмены вывода на экран строки, следующей непосредственно за нимFONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=5>

В остальных случаях команда B>ЕСНО выводит на экран текст, следующий за ней в строке.

FONT FACE="Arial" SIZE=5> B>

GOTO

FONT FACE="Arial" SIZE=5>

Применяется для перехода к определенной строке командного файла. При выполнении команды B>FONT FACE="Arial" SIZE=5>GOTO I>LABEL FONT FACE="Arial" SIZE=5>происходит переход к строке, начинающейся с текста B>FONT FACE="Arial" SIZE=5> :I>LABEL.

IF

FONT FACE="Arial" SIZE=5>

Служит для проверки словия во время выполнения командного файла.

Формат команды: B>FONT FACE="Arial" SIZE=5>IF I>FONT FACE="Arial" SIZE=5>УСЛОВИЕ КОМАНДАFONT FACE="Arial" SIZE=5> .

FONT FACE="Arial" SIZE=5>

Команда будет выполнена в том случае, если словие будет истинно. Однако, допуст м формат B>FONT FACE="Arial" SIZE=5>IF NOT I>FONT FACE="Arial" SIZE=5>УСЛОВИЕ КОМАНДА. При этом команда выполнится, если словие ложно. В качестве команды часто используется B>FONT FACE="Arial" SIZE=5>GOTO.

FONT FACE="Arial" SIZE=5>

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

B>FONT FACE="Arial" SIZE=5>

EXIST I>FONT FACE="Arial" SIZE=5>ФАЙЛFONT FACE="Arial" SIZE=5> FONT FACE="Arial" SIZE=5>- истинно в том случае, если казанный файл существует.

B>I>

СТРОКА1 = = СТРОКА2 - истинно, если строки совпадают. Обычно в одну из строк входят I>параметры командного файлаFONT FACE="Arial" SIZE=5>.

B>

PAUSE

FONT FACE="Arial" SIZE=5>

Приостанавливает выполнение командного файла до нажатия клавиши FONT FACE="Arial" SIZE=5>any. FONT FACE="Arial" SIZE=5>Если нажать клавиши FONT FACE="Arial" SIZE=5>Ctrl+Break, FONT FACE="Arial" SIZE=5>выполнение командного файла будет прервано.

FONT FACE="Arial" SIZE=5> B>

REM

FONT FACE="Arial" SIZE=5>

Строки, начинающиеся с B>FONT FACE="Arial" SIZE=5>REM, FONT FACE="Arial" SIZE=5>при выполнении командного файла игнорируются. В них можно записывать комментарии.

FONT FACE="Arial" SIZE=5> B>

FOR

FONT FACE="Arial" SIZE=5>

Формат команды: B>FONT FACE="Arial" SIZE=5>FOR %%x IN (I>FONT FACE="Arial" SIZE=5>СПИСОКFONT FACE="Arial" SIZE=5>) DO I>FONT FACE="Arial" SIZE=5>КОМАНДА

При выполнении I>КОМАНДА будет выполнена для каждого файла из списка. Эту команду можно использовать, если программа, которую нужно вызвать, не поддерживает "джокеров" - символов "*" и "?" в именах файлов.

ПримерB>FONT FACE="Arial" SIZE=5>: FOR %%A IN (*.TXT) DO MORE<%%A

FONT FACE="Arial" SIZE=5>

Эту команду можно использовать и в командной строке, но при этом вместо B>%%х нужно писать B>%хFONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=5>

Параметры командного файла - слова, идущие при его вызове в командной строке вслед за именем самого файла.

Пример B>FONT FACE="Arial" SIZE=5>- compare.bat example.txt. B>example2.txt

FONT FACE="Arial" SIZE=5>

В командном файле параметры казываются с помощью выражений B>%х, где х - цифра от 1 до 9. B>FONT FACE="Arial" SIZE=5>%0FONT FACE="Arial" SIZE=5> означает имя самого командного файла. Так, если в приведенном выше примере файл B>FONT FACE="Arial" SIZE=5>compare.bat FONT FACE="Arial" SIZE=5>содержит строку B>FONT FACE="Arial" SIZE=5>type %1, FONT FACE="Arial" SIZE=5>то во время выполнения она заменится на FONT FACE="Arial" SIZE=5>type B>example.txt.

FONT FACE="Arial" SIZE=5>

Некоторые команды MS-DOS, необходимые в написании командных файлов:

Смена текущего каталога осуществляется командой

B>FONT FACE="Arial" SIZE=5>

CD I>FONT FACE="Arial" SIZE=5>имя_каталога

Создание каталога осуществляется командой

B>FONT FACE="Arial" SIZE=5>

MD I>FONT FACE="Arial" SIZE=5>имя_каталогаFONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=5>

Копирование файла - командой

B>FONT FACE="Arial" SIZE=5>

COPY I>FONT FACE="Arial" SIZE=5>имя_файла1 имя_файла2FONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=5>

Удаление файла - командой

B>FONT FACE="Arial" SIZE=5>

DEL I>FONT FACE="Arial" SIZE=5>имя_файлаFONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=5>

Удаление каталога - командой

B>FONT FACE="Arial" SIZE=5>

DELTREE I>FONT FACE="Arial" SIZE=5>имя_каталога

Файлы объединяются командой

B>FONT FACE="Arial" SIZE=5>

COPY I>FONT FACE="Arial" SIZE=5>файл1FONT FACE="Arial" SIZE=5> + I>FONT FACE="Arial" SIZE=5>файл2 файл3 FONT FACE="Arial" SIZE=5>

FONT FACE="Arial" SIZE=5>

после выполнения которой I>файл3 содержит данные, находившиеся в файлах I>файл1 и I>файл2FONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=4> FONT SIZE=5> DIR> DIR> B>FONT FACE="Times New Roman" SIZE=6>

4. Практическая часть

FONT FACE="Times New Roman" SIZE=6>

4.1 Тексты программ

FONT FACE="Courier New" SIZE=4> OL> FONT FACE="Courier New" SIZE=4>LI>Файл FONT FACE="Courier New" SIZE=4>BATCH1.BAT FONT FACE="Courier New" SIZE=2> FONT FACE="Courier New">

@echo offecho Копирование и даление файла a:mkdir a:dir1mkdir a:dir1dir2copy c:alphaetagammaFONT FACE="Courier New"> ext1.txt a:dir1dir2 extnew.txt

del c:alphaetagamma ext1.txt

FONT FACE="Courier New">

echo Файл скопирован и дален

FONT FACE="Courier New">

pause

FONT FACE="Courier New" SIZE=2> B>FONT FACE="Courier New" SIZE=4>LI>Файл FONT FACE="Courier New" SIZE=4>SUMMA.BAT FONT FACE="Courier New" SIZE=2> FONT FACE="Courier New">

@echo offecho Объединение и переименование файлов copy c:d1anew.pas + c:d1new.pas c:d2cnew.pastype c:d2cnew.paspause

FONT FACE="Courier New">

rename c:d1anew.pas aold.pas

rename c:d1new.pas bold.pas

FONT FACE="Courier New">

echo Задание выполнено

FONT FACE="Courier New" SIZE=2> OL START=3> B>FONT FACE="Courier New" SIZE=4>LI>Файл FONT FACE="Courier New" SIZE=4>_EXIST.BAT FONT FACE="Courier New" SIZE=2> FONT FACE="Courier New">

@echo offecho Копирование файла в случае его отсутствия на дискете if not exist a:simp.for goto met1echo Файл simp.for же есть на дискете

FONT FACE="Courier New">

goto met2

:met1

copy c:forsimp.for a:simp.for

FONT FACE="Courier New">

echo Файл simp.for скопирован на диск A:

FONT FACE="Courier New">

:met2

FONT FACE="Courier New" SIZE=2> B>FONT FACE="Courier New" SIZE=4> FONT FACE="Courier New" SIZE=4>LI>Файл BATCH4.BAT FONT FACE="Courier New" SIZE=2> FONT FACE="Courier New">

@echo offgoto m%1goto qend:m1a:mkdir a:mydircopy c:*.com a:mydircopy c:*.exe a:mydir

goto qend

:m2

a:

cd a:mydir

mkdir a:mydir ewdir

copy c:*.com a:mydir ewdir

goto qend

:m3

dir a:mydir

goto qend

:m4

deltree a:mydir ewdir

goto qend

:met5

deltree a:mydir

:qend

FONT FACE="Courier New" SIZE=2> B>FONT SIZE=6> OL START=2> FONT FACE="Times New Roman" SIZE=6>

LI>Протокол работы программ

FONT SIZE=6> OL> FONT FACE="Arial" SIZE=4>

LI>Файл FONT FACE="Arial" SIZE=4>BATCH1.BAT

FONT FACE="Courier New"> FONT FACE="Courier New">

Копирование и даление файла

1 файл(а,ов) скопировано

Файл скопирован и дален

Нажмите любую клавишу...

FONT FACE="Courier New"> FONT FACE="Arial" SIZE=4>

LI>Файл FONT FACE="Arial" SIZE=4>SUMMA.BAT

FONT FACE="Courier New">

Объединение и переименование файлов

FONT FACE="Courier New">

c:d1anew.pas

c:d1new.pas

FONT FACE="Courier New">1 файл(а,ов) скопировано

FONT FACE="Courier New">

{ FONT FACE="Courier New">Содержимое файла FONT FACE="Courier New">anew.pas }

{FONT FACE="Courier New"> Содержимое файла FONT FACE="Courier New">bnew.pas }

FONT FACE="Courier New">

Нажмите любую клавишу...Задание выполнено

FONT FACE="Courier New"> FONT FACE="Arial" SIZE=4>

LI>Файл FONT FACE="Arial" SIZE=4>_EXIST.BAT

FONT FACE="Arial">

) файл отсутствует на дискете:FONT FACE="Courier New">Копирование файла в случае его отсутствия на дискете

1 файл(а,ов) скопировано

Файл FONT FACE="Courier New">simp.for FONT FACE="Courier New">скопирован на диск FONT FACE="Courier New">A:

FONT FACE="Arial">

б) файл есть на дискете:FONT FACE="Courier New">Копирование файла в случае его отсутствия на дискете

Файл FONT FACE="Courier New">simp.for FONT FACE="Courier New">уже есть на дискете

FONT FACE="Arial" SIZE=4>

4. FONT FACE="Arial" SIZE=4>Файл FONT FACE="Arial" SIZE=4>BATCH4.BAT

FONT FACE="Arial">

) запуск с параметром 1

FONT FACE="Arial"> FONT FACE="Courier New">

{ FONT FACE="Courier New">список из 10.FONT FACE="Courier New">com FONT FACE="Courier New">файловFONT FACE="Courier New"> }

FONT FACE="Courier New">

10 файл(а,ов) скопировано

FONT FACE="Courier New">

{ FONT FACE="Courier New">список из 8 FONT FACE="Courier New">.exe FONT FACE="Courier New">файлов FONT FACE="Courier New">}

8 FONT FACE="Courier New">файл(а,ов) скопировано

FONT FACE="Courier New"> FONT FACE="Arial">

б) запуск с параметром 2

FONT FACE="Courier New">

{ FONT FACE="Courier New">список из 10 FONT FACE="Courier New">.com FONT FACE="CouFACE="Courier New"> FONT FACE="Arial">

б) запуск с параметром 2

FONT FACE="Courier New">

{ FONT FACE="Courier New">список из 10 FONT FACE="Courier New">.com FONT FACE="Courier New">файловFONT FACE="Courier New"> }

10 FONT FACE="Courier New">файл(а,ов) скопировано

FONT FACE="Courier New"> FONT FACE="Arial">

в) запуск с параметром 3

FONT FACE="Arial"> FONT FACE="Courier New">

{ FONT FACE="Courier New">вывод содержимого каталога FONT FACE="Courier New">A:MYDIR }

FONT FACE="Arial"> FONT FACE="Arial">

г) запуск с параметром 4

FONT FACE="Arial"> FONT FACE="Courier New">

Удалить каталог FONT FACE="Courier New">Уa:mydir ewdirФ FONT FACE="Courier New">вместе со всеми подкаталогами? [YFONT FACE="Courier New">(FONT FACE="Courier New">даFONT FACE="Courier New">)/N(FONT FACE="Courier New">нетFONT FACE="Courier New">)] y

FONT FACE="Courier New">

Удаление FONT FACE="Courier New">a:mydir ewdir...

FONT FACE="Arial"> FONT FACE="Arial">

д) запуск с параметром 5

FONT FACE="Arial"> FONT FACE="Courier New">

Удалить каталог FONT FACE="Courier New">Уa:mydirФ FONT FACE="Courier New">вместе со всеми подкаталогами? [YFONT FACE="Courier New">(FONT FACE="Courier New">даFONT FACE="Courier New">)/N(FONT FACE="Courier New">нетFONT FACE="Courier New">)] y

FONT FACE="Courier New">

Удаление FONT FACE="Courier New">a:mydir...

FONT FACE="Arial">

OL START=3> B>FONT FACE="Times New Roman" SIZE=6>

LI> Заключение

FONT FACE="Arial" SIZE=4> FONT FACE="Arial" SIZE=5>

Выполненные задания позволяют сделать вывод о целесообразности применения командных файлов в случае необходимости использования часто повторяющихся действий. Командные файлы являются наиболее дачным решением для реализации простых алгоритмов, связанных с операциями над файлами. Однако для реализации сложных алгоритмов язык командных файлов может оказаться недостаточнымFONT FACE="Arial" SIZE=5>.

FONT FACE="Arial" SIZE=4>