Windows Script Host для Windows 2000/XP - [9]
>/*******************************************************************/
>var i, objArgs;
>objArgs = WScript.Arguments; //Создаем объект WshArguments
>for (i=0; i<=objArgs.Count()-1; i++)
> WScript.Echo(objArgs(i)); //Выводим на экран i-й аргумент
>/************* Конец *********************************************/
С помощью объекта >WshArguments
можно также выделять и отдельно обрабатывать аргументы сценария, у которых имеются имена (например, >/Name:Andrey
) и безымянные аргументы. Ясно, что использование именных параметров более удобно, т. к. в этом случае нет необходимости запоминать, в каком порядке должны быть записаны параметры при запуске того или иного сценария.
Для доступа к именным и безымянным аргументам используются соответственно два специальных свойства объекта >WshArguments
: >Named
и >Unnamed
.
Свойство >Named
содержит ссылку на коллекцию >WshNamed
, свойство >Unnamed
— на коллекцию >WshUnnamed
.
Таким образом, обрабатывать параметры командной строки запущенного сценария можно тремя способами:
□ просматривать полный набор всех параметров (как именных, так и безымянных) с помощью коллекции >WshArguments
;
□ выделить только те параметры, у которых есть имена (именные параметры) с помощью коллекции >WshNamed
;
□ выделить только те параметры, у которых нет имен (безымянные параметры) с помощью коллекции >WshUnnamed
.
У объекта >WshArguments
имеется еще один метод >ShowUsage
. Этот метод служит для вывода на экран информации о запущенном сценарии (описание аргументов командной строки, пример запуска сценария и т.д.). В свою очередь, подобную информацию можно задать только при использовании WSH-сценариев с разметкой XML; более подробно о применении метода >ShowUsage
идет речь в главе 3 при рассмотрении элементов >
, >
, >
, >
и >
.
Объект WshNamed
Объект >WshNamed
содержит коллекцию параметров командной строки запущенного сценария, у которых имеется уникальное имя (именные параметры). В WSH 5.6 именной параметр всегда начинается с символа "/", после чего приводится имя этого параметра, затем ставится двоеточие ":" и пишется значение параметра, например:
>/Name:Andrey
В качестве значения именного параметра рассматривается набор символов, начинающихся после двоеточия и заканчивающихся перед первым встретившимся пробелом. Для того чтобы значением параметра командной строки была строка, состоящая из нескольких слов, необходимо заключить эту строку в кавычки. Например:
>/Name:"Andrey Popov"
Создается объект WshNamed с помощью свойства >Named
коллекции >WshArguments
. Для того чтобы получить значение определенного аргумента, его имя используется в качестве индекса коллекции.
Узнать число именных параметров можно только с помощью свойства >Length
коллекции >WshNamed
; метода >Count
у этой коллекции нет.
Например, пусть сценарий MyScript.js запущен с двумя именными параметрами:
>MyScript.js /User:Andrey /Computer:Server1
Тогда вывести на экран значение параметров Name и Computer можно двумя способами:
>var objNamedArgs;
>objNamedArgs=WScript.Arguments.Named;
>WScript.Echo("Имя пользователя: "+objNamedArgs.Item("User"));
>WScript.Echo("Имя компьютера: "+objNamedArgs.Item ("Computer"));
или просто
>var objNamedArgs;
>objNamedArgs=WScript.Arguments.Named;
>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));
Одно из немногих изданий на русском языке, которое посвящено старейшей глобальной компьютерной сети "Fidonet". Сатирический справочник о жизни и смерти самого древнего сетевого сообщества, которое до сих пор существует среди нас.
В пособии излагаются основные тенденции развития организационного обеспечения безопасности информационных систем, а также подходы к анализу информационной инфраструктуры организационных систем и решению задач обеспечения безопасности компьютерных систем.Для студентов по направлению подготовки 230400 – Информационные системы и технологии (квалификация «бакалавр»).
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями shell.Для программистов-пользователей операционной системы UNIX.
Книга адресована программистам, работающим в самых разнообразных ОС UNIX. Авторы предлагают шире взглянуть на возможности параллельной организации вычислительного процесса в традиционном программировании. Особый акцент делается на потоках (threads), а именно на тех возможностях и сложностях, которые были привнесены в технику параллельных вычислений этой относительно новой парадигмой программирования. На примерах реальных кодов показываются приемы и преимущества параллельной организации вычислительного процесса.
Применение виртуальных машин дает различным категориям пользователей — от начинающих до IT-специалистов — множество преимуществ. Это и повышенная безопасность работы, и простота развертывания новых платформ, и снижение стоимости владения. И потому не случайно сегодня виртуальные машины переживают второе рождение.В книге рассмотрены три наиболее популярных на сегодняшний день инструмента, предназначенных для создания виртуальных машин и управления ими: Virtual PC 2004 компании Microsoft, VMware Workstation от компании VMware и относительно «свежий» продукт — Parallels Workstation, созданный в компании Parallels.
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows.