Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lr_bat.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
58.37 Кб
Скачать

3. Сопровождающие сообщения

ФОРМАТ: ECHO [ON | OFF | <сообщение>]

Команда используется для отключения эха-выдачи на экран сообщений команд или вывода на экран текстовых сообщений. С помощью этой команды можно посылать сообщения на различные устройства, а не только на экран, но и на принтер или в дисковый файл.

Например, чтобы вывести на экран сообщение о копировании файлов, достаточно включить в соответствующую строку BAT-файла команду:

ECHO Начинаю копирование файлов. Ждите...

Можно сделать так, чтобы никакая посторонняя информация при работе BAT-файла не выводилась на экран. В этом случае в первой строке командного файла необходимо записать команду:

ECHO OFF

Снова включить вывод команд на экран можно командой:

ECHO ON

Чтобы не выводить на экран и саму строку ECHO OFF, перед этой командой, в той же строке, ставят символ @, который позволяет отключить эхо для одной конкретной команды:

@ECHO OFF

Команда ECHO без параметров показывает текущее состояние (ON или OFF).

Для вывода на экран пустой строки можно использовать команду в виде ECHO: или с сообщением из неотображаемого символа.

Задание. Добавьте в файл copytxt.bat строки, выводящие сообщения о начале и завершении копирования файлов через несколько пустых строк. Сделайте так, чтобы кроме этих сообщений на экран ничего не выводилось.

4. Пауза в командном файле

ФОРМАТ: PAUSE

Эта команда используется для приостановки выполнения командного файла перед выполнением опасных операций или для выполнения пользователем определенных действий (например, установки дискеты).

По команде PAUSE обработка командного файла временно прекращается и на экран выдается сообщение, предлагающее нажать какую-либо клавишу. Если в ответ на это сообщение нажать любую клавишу, то выполнение командного файла будет продолжено. Однако, если пользователь нажмет комбинацию клавиш Ctrl+Break (или Ctrl+C), то появится запрос:

Terminate batch job (Y/N)? — Прервать работу командного файла (Д/Н)?

При нажатии клавиши N выполнение командного файла будет продолжено, а Y — прекращено. Любой другой ответ приведет к повторению запроса.

Задание. Измените файл copytxt.bat так, чтобы он выдавал сообщение о том, что сейчас будет делать, после этого приостанавливал исполнение и выдавал сообщение с просьбой нажать любую клавишу, после чего продолжал бы работу.

5. Замещаемые параметры

BAT-файл, который мы только что создали, создает каталог с заданным именем и копирует в него файлы по заданному шаблону. Получается, что если мы хотим скопировать другие файлы и в другой каталог, нам придется или изменять старый файл, или создавать новый. Это не очень удобно, и поэтому в DOS включена возможность использования в BAT-файлах так называемых замещаемых параметров. При этом вызов BAT-файла похож на вызов команды DOS с параметрами.

Замещаемые параметры обозначаются внутри командного файла значками %1, %2, ..., %9. Каждый такой значок символизирует соответствующий (первый, второй и т.д.) параметры командной строки. Символом %0 обозначается имя самого командного файла. Замещаемые параметры используются в теле BAT-файла так, как будто это сами параметры.

Усовершенствуем файл copytxt.bat так, чтобы он мог копировать файлы, подходящие под любую маску в произвольный каталог.

Пример 3.

REM Файл COPYALL.BAT для копирования произвольных файлов в произвольный каталог

Rem Создать каталог

md  %1

rem Скопировать в него TXT-файлы

copy  %2 %1

rem Просмотреть директорию

dir  %1

Например, если сохранить этот файл под именем copyall.bat, а затем вызвать его так:

copyall OLEG F:\DOS\*.EXE

то вместо параметра %1 будет подставлено OLEG, а вместо %2 — F:\DOS\*.EXE

Задание. Создайте файл copyall.bat из Примера 3.

Скопируйте с его помощью в каталог с Вашим именем все файлы из каталога F:\DOS, имя которых состоит не более, чем из трех символов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]