Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


If Errorlevel 3 Echo Форматирование прервано




GoTo Exit

If Errorlevel 1 Echo Попытайтесь отформатировать диск еще раз

GoTo Exit

If Errorlevel 0 Echo Все в порядке - Ваш диск отформатирован

:Exit

Команда Shift сдвигает список параметров пакетного файла на одну позицию влево относительно списка переменных. После однократного выполнения команды SHIFT переменная %1 получит значение второго параметра, %2 - третьего и т.д. Применение этой команды позволяет использовать практически неограниченное число параметров при ограниченном числе переменных.

:Loop

ECHO %1

SHIFT

IF -%1==- GOTO Exit (5)

GOTO Loop

:Exit

ECHO Список параметров исчерпан

В этом примере переменная %1 последовательно получает значения всех параметров, начиная с первого, и каждое ее значение выводится на экран до тех пор, пока список параметров не будет исчерпан (т.е пока переменная %1 не получит значения "пусто").

Команда FOR < параметр цикла > IN ( < список > ) DO < команд а> обеспечивает циклическое выполнение (DO) указанной <команды> для (FOR) всех значений ее параметра, помещенных в (IN) заданный список.

< Параметр цикла > (не путать с параметрами bat-файла!) обозначается одним символом (буквой), которому предшествуют два символа "%", например: %%A, %%W.

< Список > - это набор символьных строк, разделенных пробелами. Чаще всего - это спецификации файлов или имена подкаталогов – в этом случае допускается использование групповых имен с подстановочными символами "*" и "?".

FOR %%d IN (Dir1 Dir2 Dir3) DO MD %%d

FOR %%d IN (Dir1 Dir2 Dir3) DO COPY File1 %%d\ (6)

Выполнение этих двух команд, включенных в текст bat-файла, приведет к созданию в текущем каталоге трех подкаталогов - Dir1, Dir2 и Dir3 и копированию в каждый из них из текущего каталога файла File1 под своим именем.

FOR %%k IN (*.%1) DO ECHO %%k (7)

Пример иллюстрирует использование в <списке> переменных bat-файла и групповых имен файлов. Приведенная выше команда выводит на экран имена всех файлов текущего каталога, имеющих расширение, задаваемое первым параметром bat-файла.

FOR %%L IN (txt doc xls) DO IF exist %1.%%L COPY %1.%%L DIR1\ (8)

Пример иллюстрирует использование команды IF, вложенной в команду FOR: производится последовательное копирование в каталог DIR1 из текущего каталога всех файлов с заданным именем (%1) и расширениями.txt,.doc,.xls, если такие файлы созданы в текущем каталоге.

Использование команд IF, ECHO и CHOICE для создания меню

Команда CHOICE (в переводе - выбор) выводит на экран вопрос и предлагает пользователю выбрать (то есть ввести с клавиатуры) один из нескольких вариантов ответа из предлагаемого списка возможных ответов. Текст вопроса должен быть задан, как параметр команды. Список возможных ответов задается после ключа /С:.

Например, команда CHOICE /C:ДН Удалить файлы...? выведет на экран вопрос Удалить файлы...? и предоставит для выбора список из двух вариантов ответа: " Д " или " Н ". Пользователь может выбрать один из двух ответов путем ввода с клавиатуры символа "Д" или символа "Н". После ввода ответа команда CHOICE завершает свою работу и присваивает числовое значение переменой ERRORLEVEL, равное порядковому номеру ответа в предложенном списке. Это значение может быть использовано командами, записанными ниже в тексте bat-файла, например, командой IF.

При запуске следующего bat-файла команда удаления файлов будет выполняться в том случае, если пользователь выбрал утвердительный ответ "Д" (номер 1 в списке):

CHOICE /C:ДН Удалить все файлы из каталога \TEXT?

IF ERRORLEVEL 2 GOTO Exit

ECHO Удаляю файлы (9)

DEL \TEXT\*.* > Nul

ECHO Файлы удалены

: Exit

Замечания

· Параметр команды CHOICE, содержащий текст вопроса, может быть опущен - в этом случае команда выведет только список ответов.

· Ключ /С: с вариантами ответов тоже может быть опущен - в этом случае будет выведен стандартный список из двух ответов " YN ".

· Команда использует и другие ключи, полный список которых выводится при ее запуске с ключом /?.

Следующий пример иллюстрирует возможности создания меню из нескольких пунктов с помощью команд CHOICE, ECHO, IF. В тексте bat-файла используются переменные, значения которых должны быть заданы соответствующими параметрами при запуске файла на выполнение:

1-й параметр - имя редактируемого текстового файла (переменная %1);

2-й параметр - имя каталога на диске D (%2);

3-й параметр - расширение файлов, подлежащих копированию (%3).

 


:Start

ECHO Выберите нужную Вам операцию:





Поделиться с друзьями:


Дата добавления: 2015-11-05; Мы поможем в написании ваших работ!; просмотров: 705 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Есть только один способ избежать критики: ничего не делайте, ничего не говорите и будьте никем. © Аристотель
==> читать все изречения...

2187 - | 2138 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.