Использование средств WMIC
Программа WMIC представляет собой командную строку и интерфейс написания сценариев, которые упрощают использование инструментария управления Windows (WMI) и систем, управляемых с помощью WMI.
Программа WMIC основана на псевдонимах. С помощью псевдонимов можно получать доступ к основным данным инструментария WMI, не имея представления о его устройстве. Данные WMI и возможности WMI доступны через инструментарий управления без псевдонимов.
Вывести список доступных псевдонимов можно использованием параметра справки WMIC /?. Программа WMIC содержит встроенную справочную систему. Использование параметра /? возможно в любое время и на любой стадии для обнаружения дополнительных параметров текущего контекста. Параметр /? отображает доступные псевдонимы, команды и глобальные переключатели (т. е. переключатели, применяемые ко всей программе WMIC). Чтобы вывести на экран действия и переключали, доступные псевдониму, введите имя псевдоним и параметр /?. Для представления параметров, доступных определенному действию, введите имя псевдонима, действие и затем параметр /?.
Например, процессы, выполняющиеся в системе в настоящий момент, доступны в псевдониме PROCESS. Для просмотра всех процессов, выполняющихся на текущий момент на компьютере. введите PROCESS в служебную программу WMIC. Чтобы отобразить определенный процесс введите команду, подобную PROCESS WHERE (Description="explorer.exe"). Получить конкретные свойства процессов можно вводом такой команды как PROCESS GET Name, Handle, PageFaults.
Имеется возможность использовать те же параметры без применения псевдонимов с помощью команды CLASS Например, CLASS Win32_Process GET Name, Handle, PageFaults. Однако, необходимо определить имя класса из других источников. Условию псевдонима Where эквивалентно использование команды PATH Win32_Process.Description="explorer.exe".
Параметр | Результат |
---|---|
/? | Вывод справки |
CLASS | Явный ввод имени класса схемы WMI без использования применяемого по умолчанию псевдонима WMIC |
PATH | Прямой доступ к экземплярам схемы WMI без использования применяемого по умолчанию псевдонима WMIC |
CONTEXT | Отображение текущих значений всех глобальных переключателей |
QUIT | Выход из программы WMIC |
EXIT | Выход из программы WMIC |
Вызов WMIC
WMIC можно использовать как в интерактивном, так и в пакетном режиме. Интерактивный режим удобен, когда оператор вводит последовательность команд WMIC, работая непосредственно за компьютером. Пакетный режим предназначен для запуска WMIC из командного файла или применяется, когда требуется выполнить одну команду.Интерактивный режим
Чтобы запустить WMIC в интерактивном режиме, в окне «Пуск» - «Выполнить» или в командной строке введите:Появится приглашение:
(root\cli роль WMIC, используемая по умолчанию).
В ответ на приглашение можно ввести псевдоним, команду или переключатель, а также ключ /? для вывода справочных сведений.
Для выхода из интерактивного режима можно использовать команду Exit или Quit.
Пакетный режим
Чтобы получить сведения об использовании WMIC в пакетном режиме, введите:Ключ /? обеспечивает вывод справки (при этом управление будет возвращено в командную строку операционной системы). В пакетном режиме, также как и в интерактивном, можно использовать псевдонимы, переключатели и команды.
Синтаксис команды WMIC
<Команда WMI> | ::= | [<список глобальных переключателей>] <команда> |
<список глобальных переключателей> | ::= | <глобальные переключатели> | <глобальные переключатели> <список глобальных переключателей> |
<глобальные переключатели> | ::= |
(/NAMESPACE | /ROLE ) [:<пространство имен>] | /NODE [:<список идентификаторов компьютеров>] | /IMPLEVEL [:<уровень олицетворения>] | /AUTHLEVEL [:<уровень проверки подлинности>] | /LOCALE [:<идентификатор языка>] | /PRIVILEGES [:<свойство>] | /TRACE [:<вариант>] | /RECORD [:<путь файла>] | /INTERACTIVE /USER [:<идентификатор пользователя>] | /PASSWORD [:<идентификатор пароля>] | /? [:<тип справки>] |
<список идентификаторов компьютеров> | ::= | <идентификатор компьютера> | <идентификатор компьютера> <список идентификаторов компьютеров> |
<команда> | ::= |
(<псевдоним> [ <объект WMI>] | [<псевдоним>] <путь>)
[<оператор действия>] | EXIT | CLASS [<выражение пути класса>] [<оператор действия>] | RESTORE [ <путь файла восстановления>] |
<путь where> | ::= | [PATH (<выражение пути> | <выражение пути класса> )][ WHERE <оператор where>] |
<псевдоним> | ::= | !! имя для псевдонима. Уникальное имя в пространстве имен, в котором определен псевдоним. В качестве имен псевдонимов нельзя использовать зарезервированные слова CLASS, PATH, WHERE, RESTORE и EXIT. |
<объект WMI> | ::= | <родительский объект> <параметры псевдонима> <родительский объект> | <параметры псевдонима> |
<выражение пути> | ::= | !! Выражение пути WMI, включая оператор key |
<оператор where> | ::= | !! Оператор where языка запросов WQL в необязательных круглых скобках |
<выражение пути класса> | !! Выражение пути WMI без использования оператора key | |
<параметры псевдонима> | ::= | !! один или несколько пробелов, разделенные литералами, которые будут использоваться для подстановки в переменную PWhere псевдонима. |
<оператор действия> | ::= |
(<действие> [<параметры действия>] | <стандартное действие>) [<переключатели действия>] |
<действие> | ::= |
<имя свойства> | <идентификатор> | <имя метода> |
<переключатели действия> | ::= |
/INTERACTIVE | /NOINTERACTIVE |
<параметр действия> | ::= |
<фактический параметр> | <фактический параметр> , <параметр действия> |
<стандартное действие> | ::= |
<действие get> | <действие list> | <действие assoc> | <действие call> | <действие create-set> | <действие delete> |
<идентификатор> | ::= | <заголовок идентификатора> [<окончание идентификатора>] |
<заголовок идентификатора> | ::= | <буква> |
<окончание идентификатора> | ::= | <идентификатор> [<буква> | <цифра>] |
<действие get> | ::= | GET [<список свойств>] [<переключатели get>] |
<список свойств> | ::= |
<имя свойства> | <имя свойства> , <список свойств> |
<действие list> | ::= | LIST [<формат списка>|<переключатели списка>] |
<действие assoc> | ::= | ASSOC [<спецификатор формата>] |
<действие call> | ::= | CALL <имя метода> [<список фактических параметров>] |
<список фактических параметров> | ::= |
<фактический параметр> | <фактический параметр> , <список фактических параметров> |
<действие create-set> | ::= | SET <список значений>| CREATE <список значений> |
<список значений> | ::= |
<имя свойства> = <значение свойства> | <имя свойства> = <значение свойства> <список значений> |
<действие delete> | ::= | DELETE |
<переключатели get> | ::= |
/VALUE | /ALL | /TRANSLATE :<имя таблицы> | /EVERY :<интервал> | /FORMAT [:<спецификатор формата>] | /DESCRIPTION [:<кодовая страница>] |
<интервал> | ::= | !! число, обозначающее частоту, с которой должны возвращаться значения |
<спецификатор формата> | ::= |
:<имя xsl-файла> | :TABLE | :MOF |
<формат списка> | ::= |
BRIEF | INSTANCE | SYSTEM | STATUS | FULL | <пользовательский формат> |
<переключатели списка> |
/TRANSLATE | /EVERY :<интервал>| /FORMAT [:<спецификатор формата>] |
|
<тип справки> | ::= |
: BRIEF | : FULL |
WMIC имеет обработчик для синтаксического разбора, интерпретации и выполнения операций с псевдонимами, вводимых в командной строке. Этот обработчик представляет собой исполняемый файл WMICli.exe, запускаемый на компьютере, к которому подключен пользователь. Любое расширение возможностей интерпретатора командной строки WMI должно быть сделано посредством определения и регистрации файлов псевдонимов.
Псевдонимы извлекаются из схемы WMI в виде XML-файлов. Эти файлы связаны с файлами DTD (Document Type Definition определение шаблона документа) и XSL (eXtensible Style Language язык расширяемых стилей), которые позволяют определять необходимые данные и способы их представления. XML-форма псевдонима может быть использована для документирования или обмена.
WmiCli.exe получает команду через интерфейс stdin. Программа выполняет синтаксический разбор команды и, если команда содержит псевдоним, определение псевдонима извлекается из текущего операционного пространства имен WMI (по умолчанию root\ops). Интерпретация команды зависит от псевдонима и настройки среды, например текущего конечного пространства имен. Обработка команды сводится к выполнению последовательности вызовов API-интерфейса WMI к конечному пространству имен. В качестве конечного пространства может использоваться любое пространство имен при условии, что оно совместимо с обрабатываемым псевдонимом.
Данные, полученные вызовами API, преобразуются в формат XML. После форматирования данных в соответствии с таблицей стилей XSL, связанной с псевдонимом, они возвращаются пользователю через интерфейс stdout. Конечная система и система управления не обязаны совпадать, однако инициатор запроса должен иметь достаточные полномочия для доступа к первой из них.
Если конкретная таблица стилей не задана, к выходным данным применяется стандартная таблица стилей FULL.
Терминология
- Модификатор
- параметр действия, уточняющий что именно должно быть сделано
- Псевдоним
- определение классов WMI, применяемое в WMIC. Псевдонимы упрощают обращение к классам и свойствам. Они также предоставляют действия, облегчающие работу с классами. Псевдонимы могут включать средства для работы с классами на удаленном компьютере, а также на нескольких компьютерах.
- Ассоциатор
- отношение между экземплярами
- Класс
- определение объекта WMI
- Глобальный переключатель
- переключатель, применяемый к операции WMIC и всем пседонимам
- Экземпляр
- конкретный набор данных
- Интерактивные
- действия, для выполнения которых запрашивается подтверждение
- Интерактивный режим
- характеризуется вводом команд вручную в командной строке WMIC
- Метод
- доступная для выполнения функция класса или экземпляра WMI
- MOF
- Managed Object Format формат управляемых объектов; формат текстовых файлов, содержащих данные WMI
- Пространство имен
- виртуальное пространство, в котором находятся классы и экземпляры WMI
- Пакетный режим
- характеризуется вводом команд из внешней (по отношению к WMIC) командной строки, например, операционной системы
- Объект
- воплощение экземпляра
- Путь объекта
- путь WMI для использования при обращении к экземпляру или классу
- Путь
- размещение экземпляра или класса WMI
- Свойства
- параметры объекта
- Роль
- пространство имен с данными WMIC
- Схема
- формальное определение пространства имен
- Переключатель
- квалификатор, задающий режим или параметр выполнения команды
- Таблица преобразования
- правила преобразования выходных данных WMIC
- Действие
- параметр, обозначающий операцию, которая должна быть выполнена с псевдонимом
- XML
- eXtensible Markup Language язык расширяемой разметки; стандарт описания данных
- XSL
- eXtensible Style Language язык расширяемых стилей; стандарт форматирования данных XML
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь