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

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

Жанры

Windows Script Host для Windows 2000/XP

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

Шрифт:

WScript.Echo("Имя пользователя: "+objNamedArgs("User"));

WScript.Echo("Имя компьютера: "+objNamedArgs("Computer"));

Отметим также, что значением именного параметра, как и безымянного, может служить целая строка, состоящая из нескольких литералов и заключенная в кавычки, например:

MyScript.js /User:"Andrey Popov" /Computer:Server1

Тогда в результате выполнения в сценарии MyScript.js следующей строки:

WScript.Echo("Имя пользователя: "+ WScript.Arguments.Named("User"));

на экран будет выведено

Имя пользователя: Andrey Popov

Для того чтобы узнать, был ли указан при запуске сценария тот или иной именной параметр, используется метод

Exists
объекта
WshNamed
. Например,

if (WScript.Arguments.Named.Exists("User"))

 WScript.Echo("Имя пользователя: "+ WScript.Arguments.Named("User"));

Примеры, иллюстрирующие использование объекта WshNamed, приведены также в главе 2 (см. листинги 2.22 и 2.23).

Объект WshUnnamed

В коллекции

WshUnnamed
содержатся параметры командной строки запущенного сценария, у которых нет имени (безымянные параметры). Создается этот объект с помощью свойства
Unnamed
коллекции
WshArguments
. Для того чтобы получить значение определенного аргумента, его номер используется в качестве индекса коллекции (нумерация начинается с нуля).

Замечание 

Узнать число безымянных параметров можно только с помощью свойства

Length
коллекции
WshUnnamed
; метода
Count
у этой коллекции нет.

Например, сценарий MyScript.js запущен с двумя безымянными параметрами:

MyScript.js "Andrey Popov" Server1

Тогда после выполнения в сценарии MyScript.js любого из следующих двух блоков:

var objUnnamedArgs;

obUnnamedArgs=WScript.Arguments.Unnamed;

WScript.Echo("Имя пользователя: "+objUnnamedArgs.Item(0));

WScript.Echo("Имя компьютера: "+objUnnamedArgs.Item(1));

или

var objUnnamedArgs;

obUnnamedArgs=WScript.Arguments.Unnamed;

WScript.Echo("Имя пользователя: "+objUnnamedArgs(0));

WScript.Echo("Имя компьютера: "+objUnnamedArgs(1));

на экран выведутся следующие строки:

Имя пользователя: Andrey Popov

Имя компьютера: Server1

Примеры, иллюстрирующие использование объекта

WshUnnamed
, приведены также в главе 2 (см. листинги 2.22 и 2.23).

Объект WshEnvironment

Объект

WshEnvironment
позволяет получить доступ к коллекции, содержащей переменные среды заданного типа (переменные среды операционной системы, переменные среды пользователя или переменные среды текущего командного окна). Этот объект можно создать с помощью свойства
Environment
объекта
WshShell
или одноименного его метода:

var WshShell=WScript.Createobject("WScript.Shell"),

 WshSysEnv=WshShell.Environment,

 WshUserEnv=WshShell.Environment("User");

Объект

WshEnvironment
имеет свойство
Length
, в котором хранится число элементов в коллекции (количество переменных среды), и методы
Count
и
Item
. Для того чтобы получить значение определенной переменной среды, в качестве аргумента метода
Item
указывается имя этой переменной в двойных кавычках. В следующем примере мы выводим на экран значение переменной среды
PATH
:

var WshShell=WScript.CreateObject("WScript.Shell"), WshSysEnv=WshShell.Environment;

WScript.Echo("Системный путь:", WshSysEnv.Item("PATH"));

Можно также просто указать имя переменной в круглых скобках после имени объекта:

WScript.Echo("Системный путь:",WshSysEnv("PATH");

Кроме этого, у объекта WshEnvironment имеется метод Remove(strName), который удаляет заданную переменную среды. Например, в листинге 1.6 приведен сценарий, который удаляет две переменные (

EXAMPLE_1
и
EXAMPLE_2
) из окружения среды пользователя.

Замечание

Если в окружении среды пользователя нет переменных с именами

EXAMPLE_1
и
EXAMPLE_2
, то при вызове метода
Remove
произойдет ошибка.

Листинг 1.6. Удаление переменных среды

/*******************************************************************/

/* Имя: RemEnv.js */

/* Язык: JScript */

/* Описание: Удаление двух переменных среды */

/*******************************************************************/

//Создаем объект WshShell

var WshShell = WScript.CreateObject("WScript.Shell");

//Создаем объект WshEnvironment

var WshUsrEnv = WshShell.Environment("User");

//Удаляем переменные среды

WshUsrEnv.Remove("EXAMPLE_1");

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

Газлайтер. Том 4

Володин Григорий
4. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 4

Хозяин Стужи 3

Петров Максим Николаевич
3. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
7.00
рейтинг книги
Хозяин Стужи 3

Возвращение Безумного Бога

Тесленок Кирилл Геннадьевич
1. Возвращение Безумного Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Возвращение Безумного Бога

Мастер порталов

Лисина Александра
8. Гибрид
Фантастика:
боевая фантастика
попаданцы
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Мастер порталов

Точка Бифуркации VI

Смит Дейлор
6. ТБ
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Точка Бифуркации VI

Законы Рода. Том 11

Мельник Андрей
11. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 11

Вечный. Книга V

Рокотов Алексей
5. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга V

Курсант: назад в СССР 2

Дамиров Рафаэль
2. Курсант
Фантастика:
попаданцы
альтернативная история
6.33
рейтинг книги
Курсант: назад в СССР 2

Зодчий. Книга III

Погуляй Юрий Александрович
3. Зодчий Империи
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Зодчий. Книга III

Белые погоны

Лисина Александра
3. Гибрид
Фантастика:
фэнтези
попаданцы
технофэнтези
аниме
5.00
рейтинг книги
Белые погоны

Последний Паладин. Том 11

Саваровский Роман
11. Путь Паладина
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Последний Паладин. Том 11

Ваше Сиятельство 2

Моури Эрли
2. Ваше Сиятельство
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Ваше Сиятельство 2

Солдат Империи

Земляной Андрей Борисович
1. Страж
Фантастика:
попаданцы
альтернативная история
6.67
рейтинг книги
Солдат Империи

Мастер 4

Чащин Валерий
4. Мастер
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Мастер 4