1.
WSH. Запуск сценариев из командной строки
CScript имя_сценария. [параметры_сервера...] [аргументы...]
имя_сценария — имя файла сценария, включая путь и расширение.
параметры_сервера — ключи командной строки, задающие различные свойства сервера сценариев Windows.
Параметр сервера всегда начинается с двух косых черт (//).
Параметр |
Описание |
---|
//B |
Пакетный режим: подавляются отображение ошибок и запросов сценария |
//D |
Включение режима Active Debugging |
//E:ядро |
Использование указанного ядра для выполнения сценария |
//H:CScript |
Стандартный сервер сценариев заменяется на CScript.exe |
//H:WScript |
Стандартный сервер сценариев заменяется на WScript.exe (по умолчанию) |
//I |
Диалоговый режим (по умолчанию, в противоположность //B) |
//Job:xxxx |
Выполнение указанного задания WSF |
//Logo |
Отображать сведения о программе (по умолчанию) |
//Nologo |
Не отображать сведения о программе во время выполнения |
//S |
Сохранить для данного пользователя текущие параметры командной строки |
//T:nnnnn |
Интервал ожидания (в секундах): максимальное время выполнения сценария |
//X |
Выполнение сценария в отладчике |
//U |
Использование кодировки Юникод при перенаправлении ввода-вывода с консоли |
//? |
Вывод предусмотренных параметров командной строки и встроенной справки |
Примечания
- Все параметры являются необязательными, однако нельзя задать аргументы сценария, не задав сценарий. При отсутствии сценария программа Cscript.exe выведет описание синтаксиса команды и предусмотренные ключи ( аналогично параметру //?).
- Параметр времени ожидания (//T:nnnnn) ограничивает максимальное время выполнения сценария. Можно указать значение времени до 32 767 секунд. По умолчанию время выполнения не ограничено. Если время выполнения превышает заданную величину, Cscript.exe прерывает работу обработчика и останавливает процесс.
- Расширения файлов (.vbs для VBScript и .js для JScript) используются в обработчике сценариев для определения языка сценария.
- Параметр //Logo, используемый по умолчанию, сделает вас счастливым свидетелем отображения на экране надписи что-то вроде этой:
Сервер сценариев Windows (Microsoft R) версия 5.7
Корпорация Майкрософт (Microsoft Corp.), 1996-2001. Все права защищены.
Если вы хотите лишить себя такого счастья - можете использовать параметр //Nologo.
2.
ПО УМОЛЧАНИЮ ВСЕ ОПЕРАТОРЫ СРАВНЕНИЯ НЕ ЯВЛЯЮТСЯ ЧУВСТВИТЕЛЬНЫМИ К РЕГИСТРУ.
-eq |
Equal |
Равно |
-ne |
Not equal |
Не Равно |
-ge |
Greater than or equal |
Больше или Равно |
-gt |
Greater than |
Больше |
-lt |
Less than |
Меньше |
-le |
Less than or equal |
Меньше или Равно |
-like |
Wildcard comparison |
Использование символов подстановки для поиска соответствия образцу |
-notlike |
Wildcard comparison |
Использование символов подстановки для поиска несоответствия образцу |
-match |
Regular expression comparison |
Использование регулярных выражений для поиска соответствия образцу |
-notmatch |
Regular expression comparison |
Использование регулярных выражений для поиска несоответствия образцу |
-replace |
Replace operator |
Заменяет часть или все значение слева от оператора |
-contains |
Containment operator |
Определение, содержит ли значение слева от оператора значение справа. В отличие от предыдущих операторов, результатом является булево значение |
-notcontains |
Containment operator |
Определение того, что значение слева от оператора не содержит значение справа. Результатом является булево значение |
Для сравнения с учетом регистра к команде подставляется префикс "c". Для примера, оператор -eq с зависимостью от регистра изменяется на "-ceq".
Для явно заданного независящего от регистра сравнения к команде подставляется префикс "i". Пример: оператор -replace без зависимости от регистра будет -ireplace
Типы
-is |
Является типом |
-isnot |
Не является типом |
-as |
Как тип, без ошибки если возникает неудача преобразования |
Логические операторы PowerShell
-and |
Оба условия должны быть истины, чтобы выражение было истинно |
-or |
Одно или оба условия должны быть истины, чтобы выражение было истинно |
-xor |
Одно условие должно быть истинно, а второе должно иметь значение "ложь", чтобы выражение было истинно |
-not |
Указанные условия должны иметь значение "ложь", чтобы выражение было истинно |
! |
Указанное условие должно иметь значение "ложь", чтобы выражение было истинно |
Примеры
5 |
"abcdef" -replace "dEf" , "xyz" |
6 |
$myVar1 -is "String" -and $myVar2 -is "Int" |
7 |
( 1 -eq 1 ) -and -not ( 2 -gt 2 ) |