'************* Конец *********************************************
Работа с параметрами командной строки сценария
Используя аргументы командной строки, в сценарии можно передавать различную информацию, скажем, те или иные переключатели или имена пользователей и рабочих станций. При задании аргумента можно указать либо только его значение, либо имя вместе со значением в следующем формате: "Имя_аргумента:Значение".
Замечание
Как в имени аргумента, так и в его значении могут использоваться символы кириллицы.
мы передадим в сценарий Example.js два параметра: "Имя" со значением "Андрей Попов" и "Возраст" со значением "30". Значения этих параметров можно было передать и как безымянные параметры:
cscript Example.js "Андрей Попов" 30
Однако в последнем случае при задании безымянных аргументов будет важен порядок их указания в командной строке.
В WSH для обработки параметров командной строки служат следующие объекты-коллекции:
WshArguments
(содержит все параметры, как именные, так и безымянные);
WshNamed
(содержит только именные параметры);
WshUnnamed
(содержит только безымянные параметры).
Замечание
Описание аргументов командной строки в сценариях можно задавать с помощью XML-элементов
<runtime>
,
<named>
и
<unnamed>
(см. главу 3).
Для доступа к коллекциям, содержащим аргументы командной строки, в сценарии сначала нужно создать переменную-экземпляр объекта
WshArguments
; для этого используется свойство
Arguments
объекта
WScript
. Пример на языке JScript:
var objArgs=WScript.Arguments;
Для создания экземпляров коллекций
WshNamed
и
WshUnnamed
используются соответственно методы
Named
и
Unnamed
объекта
WshArguments
. Например:
var objNamedArgs=objArgs.Named;
var objUnnamedArgs=objArgs.Unnamed;
Методы
и свойства коллекций
WshArguments
,
WshNamed
и
WshUnnamed
подробно описаны в главе 1. Отметим здесь только, что для корректной работы с параметрами командной строки, имена которых содержат символы кириллицы, эти имена в сценарии должны быть написаны в кодировке Windows.
В листингах 2.21 и 2.22 приведены примеры сценариев на языках JScript и VBScript, которые выводят на экран общее количество параметров командной строки, количество именных и безымянных аргументов, а также значения каждой из этих групп параметров. Результат работы этих сценариев, запущенных в консольном режиме, представлен на рис. 2.8.
Рис. 2.8. Результат работы сценария Args.js
Листинг 2.21. Доступ к параметрам командной строки запущенного сценария (JScript)