Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические рекомендации по выполнению лаборат...doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
3 Мб
Скачать
☆

14 Создание командных файлов

14.1 Цель работы

14.1.1 Освоить работу с командами пакетной обработки информации.

14.1.2 Научиться создавать и редактировать командные файлы операционной системы.

14.2 Приборы и оборудование

14.2.1 ПЭВМ типа IBM PC

14.2.2 ОС Linux

14.3 Порядок выполнения работы

14.3.1 Изучите теоретические сведения из Приложения 1

14.3.2 Зарегистрируйтесь в ОС Linux.

14.3.3 Запустите Виртуальную машину. В результате будет эмулирована ОС Windows .

14.3.4 Откройте утилиту cmd

14.3.5 Создайте командный файл BATCH1.BAT, выполняющий действия: Исходные данные: - наличие диска C:\ - наличие на диске C: каталога C:\ALPHA

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

- Отключение режима отображения на экране выполняемой команды - Вывод на экран текста: "Копирование и удаление файла" - Создание на диске С: каталога DIR1, и в нем создание каталога DIR2 - Создание в каталоге C:\ALPHA файл TEXT1.TXT и запись в него строки "Hello, world!" - Копирование файла с именем TEXT1.TXT из каталога C:\ALPHA в файл с именем TEXTNEW.TXT в каталог С:\DIR1\DIR2 - Удаление исходного файла - Вывод на экран: "Файл скопирован и удален" - Пауза до нажатия клавиши Содержимое командного файла: copy con BATCH1.BAT

@echo off

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

mkdir С:\ DIR1

mkdir С:\ DIR1\ DIR

copy con C:\ALPHA\TEXT1.TXT

copy C:\ALPHA\TEXT1.TXT С:\DIR1\DIR2

del C:\ALPHA\TEXT1.TXT

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

pause

14.3.6 Создайте командный файл с именем SUMMA.BAT, выполняющий перечисленные действия в зависимости от переданного параметра в строке вызова. Исходные данные: - наличие диска C:\

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

- Создание каталога С:\MYDIR и копирование в него всех .com и .exe файлов с диска C: - Создание в каталоге С:\MYDIR каталога \NEWDIR и копирование в него всех .com файлов с диска C: - Вывод на экран содержимого каталога С:\MYDIR - Удаление каталога С:\MYDIR\NEWDIR - Удаление каталога С:\MYDIR

Содержимое командного файла: copy con SUMMA.BAT

@echo off

Mkdir С:\MYDIR

Copy c:\*.com c:\*.exe С:\MYDIR

Mkdir С:\MYDIR\NEWDIR

Copy c:\*.com С:\MYDIR\NEWDIR

Dir С:\MYDIR

Del С:\MYDIR\NEWDIR\*

Rmdir С:\MYDIR\NEWDIR

Del С:\MYDIR\*

Rmdir С:\MYDIR

14.3.7 Создать командный файл с именем SUMMA1.BAT, выполняющий действия: Исходные данные: - наличие диска C:\ - наличие на диске C: каталогов C:\D1 и C:\D2 - наличие в каталоге C:\D1 файлов ANEW.PAS и BNEW.PAS с любым текстом внутри.

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

- Вывод на экран "Объединение и переименование файлов" - Объединение содержимого файлов ANEW.PAS и BNEW.PAS, находящихся в каталоге C:\D1, в файл CNEW.PAS в каталоге C:\D2 - Вывод содержимого файла CNEW.PAS на экран - Ожидание нажатия клавиши - Переименование файлов ANEW.PAS и BNEW.PAS в AOLD.PAS и BOLD.PAS соответственно. - Вывод на экран: "Задание выполнено" Содержимое командного файла: copy con SUMMA1.BAT

@echo off

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

Copy C:\D1\ ANEW.PAS + C:\D1\BNEW.PAS C:\D2\CNEW.PAS

Type C:\D2\CNEW.PAS

ren C:\D1\ ANEW.PAS C:\D1\AOLD.PAS

ren C:\D1\BNEW.PAS C:\D1\ BOLD.PAS

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

14.3.8 Запустите созданные bat-файлы на выполнение (в командной строке наберите только имена файлов с расширением)

14.3.9 Опишите результат выполнения файла.

14.3.10 Создайте свой собственный командный файл, содержимое файла и результат выполнения представьте в отчете.

14.3.11. Завершите работу с виртуальной машиной.

14.3.12 Оформите отчет и сдайте его преподавателю.

Приложение 1

ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

В операционных системах Ms Dos и Windows команды выполняются с помощью специальной программы – интерпретатора команд command.com. Некоторые команды распознаются и выполняются самим командным процессором – они называются внутренними, другие представляют собой отдельные программы – их называют внешними (утилитами).

Внутренними командами являются:

BREAK

прерывание

CALL

вызов командного файла

CHCP

вывод или смена текущей кодовой страницы

CHDIR

смена каталога

CLS

очистка экрана

COPY

копирование файлов

CTTY

смена устройства вывода – экран, принтер и т.д.

DATE

просмотр и установка даты

DEL

удаление файла

DIR

вывод информации о содержимом дисков и каталогов

ECHO

вывод строки на экран

EXIT

выхода из интерпретатора command.com

FOR

оператор цикла в bat-файлах

GOTO

оператор перехода в bat-файлах

IF

условный оператор в bat-файлах

LOADHIGH

загрузка программы в область верхней памяти

MKDIR

создание каталога

PATH

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

PAUSE

пауза до нажатия любой клавиши

PROMPT

установка формата командной строки

REM

комментарий в командных файлах

RENAME

переименование файла

RMDIR

удаления каталога

SET

установка переменных окружения

SHIFT

сдвиг параметров для пакетного файла

TIME

просмотр и установка времени

TYPE

просмотр файла

VER

вывод версии

VERIFY

контроль записи

VOL

информация о томе

Все остальные команды являются внешними.

Команды пакетной обработки

Все команды пакетной обработки являются резидентными (внутренними).

SET - Формирование среды.

set [строка1=[строка2]]

Если указываемая первая строка уже существует в среде, то ее параметр в среде заменяется на новый параметр (вторая строка). Если вы укажете только первую строку, то параметр этой строки в среде будет отменен. Если вы введете только саму команду без опций, то на экран будет выведены все текущие установки среды.

CALL - Вызов одного командного файла из другого.

call [drive][path] filename

При указании имени командного файла необходимо указать расширение .bat. При выполнении пакетного файла возобновляется выполнение вызывавшего командного файла с команды указанной в командной строке вызова. Если опция «команда» опущена, то выполнение возобновляется с команды непосредственно следующей за командой call. Нельзя использовать символы переадресации ввода/вывода с этой командой.

ECHO - Вывод на экран сообщений, включение/выключение режима ввода на экран сообщений

Echo [on | off]

Echo [message]

message – сообщение, которое вы хотите вывести на экран

Команда используется в командных файлах для вывода на экран необходимых сообщений и для включения/выключения отображения на экран исполняемых команд. Обычно при выполнении команд соответствующие командные строки выводятся на экран (эхо). Отменить вывод эха можно с помощью опции off, а восстановить с помощью опции on. Для отмены вывода на экран выполняемой командной строки можно с использованием символа @, поместив его в начало строки.

FOR - Управление выполнением команд над определенными файлами в списке

for %variable in (set) do command

%variable – определяет заменяемый параметр

(set) – определяет набор (одного или нескольких файлов). Можно использовать шаблоны имени файла.

Команду for можно использовать как вне пакетного файла, так и внутри его. При использовании в пакетных файлах команды for имя параметра должно начинаться с двух символов %%. Вне пакетного файла – с одного. Используемые имена параметров не должны быть %%0 … %%9, чтобы не совпадать с формальными параметрами.

Примеры:

- for %%f in (*.doc) do print %%f - Команда выводит на печать все файлы с расширением .doc, находящиеся в текущем каталоге

- for %%f in (txt doc bak) do print file.%%f - Данная команда выводит на печать файлы file.txt, file.doc, file.bak

GOTO - Передача управления на метку в пакетных файлах

goto label

label - определенная текстовая строка, используемая в качестве метки в пакетных файлах

Метка может содержать пробелы, но не другие разделители, такие как точка с запятой или знак равно. Строка, отмечаемая меткой, начинается с символа двоеточие. Любая же строка пакетного файла, начинающаяся с символа (:), игнорируется во время выполнения пакетного файла. Если пакетный файл не содержит метки, выполнение пакетного файла прерывается.

IF - Проверка выполнения условия в пакетных файлах

if [not] errorlevel number command

if [not] string1= =string2 command

if [not] exist filename command

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

errorlevel number – определяет значение условия как истинное, если код завершения предыдущей программы равен или больше числа, определяемого number

command – определяет команду, выполняемую при истинности условия

string1= =string2 – определяет значение условия как истинное, если строки являются идентичными (строки не могут содержать следующие разделители: пробел, равно, запятая, точка с запятой)

exist filename – определяет значение условия как истинное, если указанный файл существует.

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

PAUSE - Приостановка выполнения пакетных файлов

pause

Выполнение пакетного файла по команде прерывается до тех пор, пока вы не нажмете какую-либо клавишу. При этом на экран выведется сообщение: Strike a key when ready… (Нажмите любую клавишу, когда будете готовы…). Используйте эту команду в тех случаях, вам нужно приостановить выполнение командного файла для вывода на экран какой - либо информации. Вы можете прописать в командной строке после команды Pause любой текст и он будет выведен на экран.

REM - Запись комментариев в пакетных файлах

Rem [comment]

Comment – Комментарий – любая строка символов

В строке комментария разрешены в качестве разделителя только пробелы, символы табуляции и запятые.

Если в начале командной строки пакетного файла расположена команда rem, то система воспринимает последующую запись как комментарий. Это свойство можно использовать, если вы хотите временно «выключить» некоторые команды из пакетного файла, не стирая их. Комментарий можно использовать для пояснения работы пакетного файла.