Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

<job id="Named">

 <runtime>

<description>

Имя: named.wsf

Кодировка: Windows

</description>

<named

name="Имя"

helpstring="Имя пользователя"

type="string" required="true"/>

<named

name="Компьютер"

helpstring="Имя рабочей станции"

type="string" required="false"/>

<named

name="Новый"

helpstring="Признак
того, что такого пользователя раньше не было"

type="boolean" required="true"/>

 </runtime>

 <script language="JScript">

var objNamedArgs,s;

s="";

//Вызываем метод ShowUsage для вывода на экран описания сценария

WScript.Arguments.ShowUsage;

//Создаем объект WshNamed - коллекция именных аргументов сценария

objNamedArgs= WScript.Arguments.Named;

//Проверяем, существует ли аргумент /Имя:

if (objNamedArgs.Exists("Имя"))

//Получаем значение символьного аргумента /Имя

s+="Имя: "+objNamedArgs("Имя")+"\n";

//Проверяем, существует ли аргумент /Компьютер:

if (objNamedArgs.Exists("Компьютер"))

//Получаем значение символьного аргумента /Компьютер

s+="Машина: "+objNamedArgs("Компьютер")+"\n";

//Проверяем, существует ли аргумент /Новый

if (objNamedArgs.Exists("Новый"))

//Получаем с помощью условного оператора значение

//логического аргумента /Новый

s+="Новый пользователь: "+(objNamedArgs("Новый") ? "Да" : "Нет");

//Выводим полученные строки на экран

WScript.Echo(s);

 </script>

</job>

Элемент <unnamed>

С помощью элементов

<unnamed>
можно описывать (документировать) безымянные параметры командной строки сценария. В табл. 3.2 приведено описание аргументов элемента
<unnamed>
.

Таблица 3.2. Аргументы элемента

<unnamed>

Аргумент Описание
name
Задает имя, которое будет указано для описываемого параметра командной строки при выводе информации о сценарии
helpstring
Строка, содержащая описание параметра командной строки
many
Определяет, сколько раз может быть указан безымянный параметр в командной строке. Значение,
равное "
true
" (используется по умолчанию), означает, что безымянный параметр может встретиться в командной строке более одного раза. Значение, равное "
false
", означает, что безымянный параметр должен быть указан только один раз
required
Определяет, является ли безымянный параметр командной строки обязательным. Может принимать значения "
true
", "
on
" или 1 (параметр нужно указывать обязательно), "
false
", "
off
" или 0 (параметр можно не указывать). Также значением аргумента "required" может быть целое число, которое показывает, сколько раз безымянный параметр должен обязательно быть указан в командной строке

Информация, которая указывается для объявляемого в элементе

<unnamed>
параметра командной строки, используется, как и в случае элемента
<named>
, только для самодокументируемости сценария и никак не влияет на реальные значения, которые будут указаны в командной строке при запуске сценария. Например, если безымянный параметр объявлен как обязательный (
required="true"
), но в действительности не был указан при запуске сценария, то никакой ошибки во время работы не произойдет.

Рассмотрим в качестве примера сценарий unnamed.wsf, в который в качестве параметров командной строки должны передаваться расширения файлов, причем обязательно должны быть указаны хотя бы два таких расширения (листинг 3.4).

Для создания информации об использовании этого сценария создается элемент

<unnamed>
следующего вида:

<unnamed name="Расш" helpstring="Расширения файлов" many="true" required=2/>

После запуска с помощью wscript.exe в сценарии unnamed.wsf сначала вызывается метод

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

Рис. 3.4. Диалоговое окно с информацией о параметрах сценария unnamed.wsf

Затем в сценарии создается коллекция

objUnnamedArgs
(объект
WshUnnamed
), которая содержит все безымянные аргументы командной строки, реально переданные в сценарий:

objUnnamedArgs=WScript.Arguments.Unnamed; //Создаем объект WshUnnamed

После этого определяется общее число реально переданных в сценарий параметров командной строки (свойство

length
) и в цикле
while
организуется перебор всех элементов коллекции
objUnnamedArgs
.

//Определяем количество безымянных аргументов

s="Передано в сценарий безымянных аргументов: "+objUnnamedArgs.length;

for (i=0; i<=objUnnamedArgs.length-1; i++)

 //Формируем строки со значениями безымянных аргументов

 s+="\n"+objUnnamedArgs(i);

//Выводим полученные строки на экран

WScript.Echo(s);

Если запустить сценарий unnamed.wsf следующим образом:

Поделиться:
Популярные книги

Избранное

Додерер Хаймито
Мастера современной прозы
Проза:
современная проза
5.00
рейтинг книги
Избранное

Секонд хенд

Секстон Мари
2. Такер Спрингс
Любовные романы:
зарубежные любовные романы
5.00
рейтинг книги
Секонд хенд

1876

Видал Гор
3. История империи
Проза:
проза прочее
5.00
рейтинг книги
1876

50 знаменитых городов мира

Скляренко Валентина Марковна
31. 100 знаменитых
Научно-образовательная:
история
4.75
рейтинг книги
50 знаменитых городов мира

Судебные речи

Вышинский Андрей Януарьевич
Научно-образовательная:
политика
юриспруденция
5.00
рейтинг книги
Судебные речи

Библия Раджниша. Том 2. Книга 1

Раджниш Бхагаван Шри
Религия и эзотерика:
самосовершенствование
эзотерика
6.25
рейтинг книги
Библия Раджниша. Том 2. Книга 1

Пути. Дороги. Встречи

Сидоров Георгий Алексеевич
3. Хронолого-эзотерический анализ развития современной цивилизации
Научно-образовательная:
история
8.07
рейтинг книги
Пути. Дороги. Встречи

Наследство

Браун Саймон
1. Ключи власти
Фантастика:
фэнтези
6.25
рейтинг книги
Наследство

Любовь и магия (сборник)

Гаврилова Анна Сергеевна
Колдовские миры
Фантастика:
фэнтези
мистика
8.38
рейтинг книги
Любовь и магия (сборник)

Имперец. Том 3

Романов Михаил Яковлевич
2. Имперец
Фантастика:
боевая фантастика
попаданцы
альтернативная история
7.50
рейтинг книги
Имперец. Том 3

Разбитое окно

Дивер Джеффри
8. Райм и Сакс
Детективы:
прочие детективы
7.75
рейтинг книги
Разбитое окно

Первый Предтеча. Трилогия

Тарс Элиан
Первый Предтеча
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Первый Предтеча. Трилогия

Олесь Бердник

Харьковский ???
5.00
рейтинг книги
Олесь Бердник

Избранные письма. Том 2

Немирович-Данченко Владимир Иванович
Документальная литература:
публицистика
5.00
рейтинг книги
Избранные письма. Том 2