Где метка_перехода обозначает место, в которое оператор GOTO должен передать управление.




Пример1. Пакетный файл primer1.bat

@echo off

cls

if not exist c:\temp\sozdan.bat goto f

C:

cd c:\temp

sozdan

goto end

:f

echo File not found

:end

Этот пакетный файл сначала очищает экран дисплея, затем проверяет (через команду if not exist), отсутствует ли файл с именем sozdan.bat в каталоге C:\Temp, и если это так, то передает управление на метку:f. Метки перехода обозначаются двоеточием в начале. После этого на экран дисплея выводится сообщение: “File not found!!”

При запуске пакетный файл может принимать параметры из командной строки. Параметры нумеруются символами %1, %2, %3,…%9 с обязательным разделительным пробелом. При вызове соответствующий % заменяется на параметр.

Таким образом, пакетный файл primer1.bat может быть запущен с параметром sozdan.bat, а в соответствующем месте в тексте файла нужно указать символ %1.

Пример2. Пакетный файл primer2.bat

@echo off

cls

if not exist c:\temp\%1 goto f

C:

cd c:\temp

%1

goto end

:f

echo File not found

:end

 

FOR – пакетная команда для многократного повторения какой-либо команды. Формат команды:

FOR %%переменная IN (значение) DO команда [параметры]

переменная – не может быть цифрой; используется для того, чтобы получить текущее значение и передать его дальше;

значение – может быть именем файла (с указанием пути или без него), именем каталога или символьной цепочкой. В именах файлов допустимы символы подстановки (* ИЛИ?);

команда – команда MS-DOS, подлежащая многократному выполнению;

параметры – параметры или ключи для выполняемой команды MS-DOS.

Пример3. В каталоге C:\Temp находятся файлы if.txt, goto.txt, for.txt, rem.txt, echo.txt. Создать пакетный файл, который последовательно и постранично выведет на экран содержимое этих файлов.

Пример3. Пакетный файл primer3.bat

@echo off

cls

for %%A in (*.txt) do type %%A|more&pause

 

Rem – вводит комментарий в командном файле.

Пакет Windows NT Resourse Kit содержит другие полезные утилиты для работы с пакетными файлами.

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

Для доступа из командного файла к параметрам командной строки применяются символы %0, %1, …, %9 или %*. При этом вместо подставляется имя выполняемого пакетного файла, вместо %0%1, %2, …, %9 — значения первых девяти параметров командной строки соответственно, а вместо %* — все аргументы. Если в командной строке при вызове пакетного файла задано меньше девяти параметров, то "лишние" переменные из %1%9 замещаются пустыми строками. Рассмотрим следующий пример. Пусть имеется командный файл copier.bat следующего содержания:

@ECHO OFF CLS ECHO File %0 copying directory %1 in %2 XCOPY %1 %2 /S

Если запустить его из командной строки с двумя параметрами, например

copier.bat C:\Programs D:\Backup

то на экран выведется сообщение

File copier.bat copying directory C:\Programs in D:\Backup

и произойдет копирование каталога C:\Programs со всеми его подкаталогами в D:\Backup.

При необходимости можно использовать более девяти параметров командной строки. Это достигается с помощью команды SHIFT, которая изменяет значения замещаемых параметров с %0 по %9, копируя каждый параметр в предыдущий, то есть значение %1 копируется в %0, значение %2 – в %1 и т.д. Замещаемому параметру %9 присваивается значение параметра, следующего в командной строке за старым значением %9. Если же такой параметр не задан, то новое значение %9 — пустая строка.

Рассмотрим пример. Пусть командный файл my.bat вызван из командной строки следующим образом:

my.bat p1 p2 p3

Тогда %0=my.bat, %1=p1, %2=p2, %3=p3, параметры %4 – %9 являются пустыми строками. После выполнения команды SHIFT значения замещаемых параметров изменятся следующим образом: %0=p1, %1=p2, %2=p3, параметры %3 – %9 – пустые строки.

При включении расширенной обработки команд SHIFT поддерживает ключ /n, задающий начало сдвига параметров с номера n, где n может быть числом от 0 до 9.

Например, в следующей команде:

SHIFT /2

параметр %2 заменяется на %3, %3 на %4 и т.д., а параметры %0 и %1 остаются без изменений.

Команда, обратная SHIFT (обратный сдвиг), отсутствует. После выполнения SHIFT уже нельзя восстановить параметр (%0), который был первым перед сдвигом. Если в командной строке задано больше десяти параметров, то команду SHIFT можно использовать несколько раз.

 

Задания на выполнение работы:

1. Создать и сохранить в совей папке учебные файлы primer1.bat, primer2.bat, primer3.bat.

2. Самостоятельно создать пакетные файлы, выполняющие следующие задачи:

a. Создать в C:\Temp пакетный файл spr.bat, который при запуске его с параметром (параметр – имя соответствующей команды) создает текстовый файл, который должен содержать справку по данной команде команде (например, при запуске spr if – в C:\Temp должен быть создан файл if.txt, содержащий описание этой команды). Создать с помощью пакетного файла spr.bat текстовые файлы if.txt, goto.txt, for.txt, rem.txt, echo.txt.

b. Создать пакетный файл new_name.bat, который проверяет наличие соответствующего текстового файла и, если он найден в C:\Temp, копирует его в папку студента, изменяя при этом расширение на .doc. Запустить пакетный файл new_name.bat 5 раз, задавая при этом в качестве параметра имя соответствующего файла с расширением *.txt.

 

3. Написать пакетный файл, выполняющий следующие задачи.

1) Сделать текущим диск D:.

2) Создать каталог MYDIR в каталоге C:\TEMP.

3) Изменить текущий каталог на каталог TEMP диска С:.

4) Просмотреть содержимое текущего каталога:

а) вывести список файлов и подкаталогов с паузой после каждой страницы (экрана);

б) вывести этот же список в несколько колонок;

в) вывести список файлов корневого каталога диска С:, имеющих атрибут “системный”

5) Создать в каталоге MYDIR следующую структуру каталогов:

6) С помощью команды copy создать в каталоге MYDIR текстовый файл example.txt из двух строк (любых). Для обозначения файла-источника при вводе с клавиатуры используется имя con, разделитель строк – нажатие [Enter], конец ввода – [F6]

7) Скопировать в каталог CAT1 файл example.txt.

8) Переименовать каталог CAT1 в TEXT.

9) Вывести на экран содержимое файла example.txt.

10) Скопировать в каталог CAT3 все файлы с расширением ini из каталога С:\WINNT.

11) Переместить все файлы из каталога CAT3 в каталог CAT4 с изменением расширения файлов на doc.

12) Удалить каталог CAT3.

13) Вывести текущую дату. (самостоятельно)

14) Вывести текущее время.(самостоятельно)

15) Добавить в приглашение DOS текущие дату и время.(самостоятельно)

16) Узнать версию операционной системы.

17) Удалить каталог MYDIR.

4. Сформировать отчет по проделанной работе




Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-25 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: