Читайте данную работу прямо на сайте или скачайте
Командные файлы
МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ
КАФЕДРА ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНОЙ АППАРАТУРЫ
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>