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

Установка переменных среды

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

Чтобы отобразить переменную, в командной строке введите:

set имя_переменной

Чтобы добавить переменную, в командной строке введите:

set variablename=значение

Чтобы удалить переменную, в командной строке введите:

set имя_переменной=

Имеется возможность использовать большинство символов в качестве значений переменных, в том числе пробел. При использовании специальных символов, таких как <, >, &, или ^, перед ними следует помещать управляющий символ (^) или кавычки. При использовании кавычек они включаются в значение переменной, так как все символы, следующие после знака равенства принимаются за значение переменной. Учтите следующие примеры.

  • Чтобы создать значение переменной new&name ,введите:

set varname=new^&name

  • Чтобы создать значение переменной "new&name" ,введите:

set varname="new&name"

  • При вводе в командной строке set varname=new&name появляется следующее сообщение об ошибке: "'name' is not recognized as an internal or external command, operable program or batch file."

В именах переменных регистр символов не учитывается. Однако, команда set отображает значение переменной так, как оно было введено. Можно комбинировать символы нижнего и верхнего регистра в именах переменных, чтобы облегчить восприятие кода (например, ИмяПользователя).

Примечания

  • Максимальный размер отдельной переменной среды составляет 8192 байта.

  • Максимальный общий размер всех переменных среды, включая имена переменных и знак равенства, составляет 65 536 Кбайт.

Подстановка значений в переменные среды

Чтобы иметь возможность подставлять значения в переменную среды из командной строки или из сценариев, следует заключить имя соответствующей переменной в символы процентов (%имя_переменной%). Символы процентов указывают на то, что Cmd.exe должен обратиться к значениям переменных, а не делать посимвольное сравнение. После определения значения для имени переменной, заключите имя переменной в символы процентов. Cmd.exe проводит поиск всех вхождений имени переменной и заменяет его на определенное значение переменной. Например, требуется создать сценарий, содержащий различные значения (например, имена пользователей), и требуется определить соответствующее значение переменной среды USERNAME для каждого пользователя. Для этого следует написать сценарий с использованием переменной USERNAME, заключенной в кавычки. При выполнении сценария Cmd.exe заменит вхождения %USERNAME% соответствующими значениями, что избавит от необходимости делать это вручную для каждого пользователя. Подстановка значений не является рекурсивной. Cmd.exe проверяет переменные один раз.

Задание

1. В отчете подробно расписать ход и результат работы такого скрипта:

Автоматическое создание резервной копии данных

rem ******************* rem ******************* SET DRIVE1ST=d: SET DRIVE2ND=e: rem ******************* rem ******************* SET PASSWD=qmsdhgsdfgsdfhdsfhsdhf rem ******************* rem ******************* rem SET COPYTO=\\shpakk\c$\!backup rem ******************** rem ******************** %DRIVE1ST% if not exist \!backup md \!backup if not exist \!backup\Departments md \!backup\Departments if not exist \!backup\Exchange md \!backup\Exchange if not exist \!backup\MEDEA_rdisk md \!backup\MEDEA_rdisk cd \!backup rem ****************************** rem *** Backup \\SERVER\e$\Exchange rem ****************************** SET DIRNAME=Exchange SET FILENAME=SERVER_Exchange SET SOURCEDIR=e:\Exchange rar a -r -m5 -dh -x*.mp3 -x*.fcd -x*.avi -x*.zip -x*.rar -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.* if not exist %DIRNAME%\%FILENAME%_new.rar goto next2 del %DIRNAME%\%FILENAME%_old.rar ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME% :next2 rem *************************** rem *** Backup \\SERVER\e$\Users rem *************************** SET DIRNAME=Departments SET FILENAME=SERVER_Departments SET SOURCEDIR=e:\Departments if not exist %DIRNAME%\%FILENAME%_new.rar goto next3 del %DIRNAME%\%FILENAME%_old.rar ren %DIRNAME%\%FILENAME%_4.rar %FILENAME%_old.rar ren %DIRNAME%\%FILENAME%_3.rar %FILENAME%_4.rar ren %DIRNAME%\%FILENAME%_2.rar %FILENAME%_3.rar ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%_2.rar :next3 rem ******************* rem ******************* rem rar a -r -m5 -v357888k -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR% rem ******************* rem ******************* rar a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR% goto next4 :next4 rem ********************************** rem ********************************** SET DIRNAME=MEDEA_rdisk SET FILENAME=MEDEA_rdisk SET SOURCEDIR=%windir%\repair %windir%\system32\rdisk.exe /s- rar a -r -m5 -dh -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.* if not exist %DIRNAME%\%FILENAME%_new.rar goto next5 del %DIRNAME%\%FILENAME%_old.rar ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME% :next5

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