Set-WmiInstance
Создает или обновляет экземпляр существующего класса WMI.
Синтаксис
Set-WmiInstance
[-Class] <String>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
-InputObject <ManagementObject>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
-Path <String>
[-Arguments <Hashtable>]
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-WmiInstance
[-PutType <PutType>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Set-WmiInstance
создает или обновляет экземпляр существующего класса инструментария управления Windows (WMI). Созданный или обновленный экземпляр записывается в репозиторий WMI.
В Windows PowerShell 3.0 появились новые командлеты CIM, которые выполняют те же задачи, что и командлеты WMI. Командлеты CIM соответствуют стандартам WS-Management (WSMan) и стандарту Common Information Model (CIM). Это позволяет командлетам использовать те же методы для управления компьютерами под управлением Windows и других операционных систем. Вместо использования рекомендуется использовать Set-WmiInstance
командлеты Set-CimInstance или New-CimInstance.
Примеры
Пример 1. Настройка уровня ведения журнала WMI
Set-WmiInstance -Class Win32_WMISetting -Argument @{LoggingLevel=2}
__GENUS : 2
__CLASS : Win32_WMISetting
__SUPERCLASS : CIM_Setting
__DYNASTY : CIM_Setting
__RELPATH : Win32_WMISetting=@
__PROPERTY_COUNT : 27
__DERIVATION : {CIM_Setting}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace : \\root\cimv2
ASPScriptEnabled : False
AutorecoverMofs : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X :
BackupInterval :
BackupLastTime :
BuildVersion : 6001.18000
Caption :
DatabaseDirectory : C:\Windows\system32\wbem\repository
DatabaseMaxSize :
Description :
EnableAnonWin9xConnections :
EnableEvents : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects :
HighThresholdOnEvents : 20000000
InstallationDirectory : C:\Windows\system32\wbem
LastStartupHeapPreallocation :
LoggingDirectory : C:\Windows\system32\wbem\Logs\
LoggingLevel : 2
LowThresholdOnClientObjects :
LowThresholdOnEvents : 10000000
MaxLogFileSize : 65536
MaxWaitOnClientObjects :
MaxWaitOnEvents : 2000
MofSelfInstallDirectory :
SettingID :
Эта команда задает 2 уровень ведения журнала WMI. Команда передает свойство, которое нужно задать, и значение вместе считается парой значений в параметре аргумента. Параметр принимает хэш-таблицу, определяемую конструкцией @{property = value}
. Возвращаемые сведения о классе отражают новое значение.
Пример 2. Создание переменной среды и ее значения
Set-WmiInstance -Class win32_environment -Argument @{Name="testvar";VariableValue="testvalue";UserName="<SYSTEM>"}
__GENUS : 2
__CLASS : Win32_Environment
__SUPERCLASS : CIM_SystemResource
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_Environment.Name="testvar",UserName="<SYSTEM>"
__PROPERTY_COUNT : 8
__DERIVATION : {CIM_SystemResource, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_Environment.Name="testvar",UserName="<SYSTEM>"
Caption : <SYSTEM>\testvar
Description : <SYSTEM>\testvar
InstallDate :
Name : testvar
Status : OK
SystemVariable : True
UserName : <SYSTEM>
VariableValue : testvalue
Эта команда создает переменную среды testvar, которая имеет значение testvalue. Это делается путем создания нового экземпляра класса WMI Win32_Environment . Для этой операции требуются соответствующие учетные данные, и может потребоваться перезапустить Windows PowerShell, чтобы увидеть новую переменную среды.
Пример 3. Настройка уровня ведения журнала WMI для нескольких удаленных компьютеров
Set-WmiInstance -Class Win32_WMISetting -Argument @{LoggingLevel=2} -Computername "system01", "system02", "system03"
__GENUS : 2
__CLASS : Win32_WMISetting
__SUPERCLASS : CIM_Setting
__DYNASTY : CIM_Setting
__RELPATH : Win32_WMISetting=@
__PROPERTY_COUNT : 27
__DERIVATION : {CIM_Setting}
__SERVER : SYSTEM01
__NAMESPACE : root\cimv2
__PATH : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace : \\root\cimv2
ASPScriptEnabled : False
AutorecoverMofs : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X :
BackupInterval :
BackupLastTime :
BuildVersion : 6001.18000
Caption :
DatabaseDirectory : C:\Windows\system32\wbem\repository
DatabaseMaxSize :
Description :
EnableAnonWin9xConnections :
EnableEvents : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects :
HighThresholdOnEvents : 20000000
InstallationDirectory : C:\Windows\system32\wbem
LastStartupHeapPreallocation :
LoggingDirectory : C:\Windows\system32\wbem\Logs\
LoggingLevel : 2
LowThresholdOnClientObjects :
LowThresholdOnEvents : 10000000
MaxLogFileSize : 65536
MaxWaitOnClientObjects :
MaxWaitOnEvents : 2000
MofSelfInstallDirectory :
SettingID :
...
Эта команда задает 2 уровень ведения журнала WMI. Команда передает свойство, которое нужно задать, и значение вместе считается парой значений в параметре аргумента. Параметр принимает хэш-таблицу, определяемую конструкцией @{property = value}
. Возвращаемые сведения о классе отражают новое значение.
Параметры
-Arguments
Указывает имя свойства, которое необходимо изменить, и новое значение свойства. Имя и значение должны быть парой "имя-значение". Пара "имя-значение" передается в командной строке в виде хэш-таблицы. Например:
@{Setting1=1; Setting2=5; Setting3="test"}
Тип: | Hashtable |
Aliases: | Args, Property |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-AsJob
Указывает, что этот командлет выполняется в качестве фонового задания. Используйте этот параметр для запуска команд, на завершение которых требуется много времени.
При указании параметра AsJob команда возвращает объект, представляющий фоновое задание, а затем отображает командную строку. Можно продолжить работу в рамках данного сеанса, пока задание завершается. Если используется для удаленного компьютера, задание создается на локальном компьютере, а результаты с удаленных компьютеров автоматически возвращаются на локальный компьютер. Чтобы управлять заданием, используйте командлеты, содержащие существительное задание (командлеты задания). Чтобы получить результаты задания, используйте Receive-Job
командлет.
Чтобы использовать этот параметр вместе с удаленными компьютерами, локальные и удаленные компьютеры должны быть настроены для удаленного взаимодействия. Кроме того, необходимо запустить Windows PowerShell с помощью параметра "Запуск от имени администратора" в Windows Vista и более поздних версиях операционной системы Windows. Дополнительные сведения см. в about_Remote_Requirements.
Дополнительные сведения о фоновых заданиях Windows PowerShell см. в about_Jobs и about_Remote_Jobs.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Authentication
Указывает уровень проверки подлинности, который должен использоваться с подключением WMI. Допустимые значения для этого параметра:
-1
:Неизменившийся.0
: по умолчанию.1
:Никакой. Проверка подлинности не выполнена.2
:Соединять. Проверка подлинности выполняется только в том случае, если клиент устанавливает связь с приложением.3
:Звать. Проверка подлинности выполняется только в начале каждого вызова, когда приложение получает запрос.4
:Пакет. Проверка подлинности выполняется для всех данных, полученных от клиента.5
: PacketIntegrity. Все данные, передаваемые между клиентом и приложением, проходят проверку подлинности и проверяются.6
: PacketPrivacy. Используются свойства других уровней проверки подлинности, а все данные шифруются.
Тип: | AuthenticationLevel |
Допустимые значения: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Authority
Указывает центр сертификации, используемый для проверки подлинности подключения к WMI. Можно выбрать стандартную проверку подлинности NTLM или Kerberos. Чтобы использовать NTLM, задайте для параметра центра значение ntlmdomain:<DomainName, где <DomainName>> определяет допустимое доменное имя NTLM. Чтобы использовать Kerberos, укажите kerberos:<DomainName>\<ServerName>. Параметр authority не может быть указан при подключении к локальному компьютеру.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Class
Задает имя класса WMI.
Тип: | String |
Position: | 0 |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ComputerName
Указывает имя компьютера, на котором выполняется этот командлет. По умолчанию используется локальный компьютер.
Введите имя NetBIOS, IP-адрес или полное доменное имя одного или нескольких компьютеров.
Чтобы указать локальный компьютер, введите имя компьютера, точку (.
) или localhost.
Этот параметр не зависит от удаленного взаимодействия Windows PowerShell. Параметр ComputerName можно использовать, даже если компьютер не настроен для выполнения удаленных команд.
Тип: | String[] |
Aliases: | Cn |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Confirm
Запрос подтверждения перед выполнением командлета.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Указывает учетную запись пользователя с разрешением на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, либо укажите объект PSCredential, например формируемый командлетом Get-Credential. При вводе имени пользователя этот командлет запрашивает пароль.
Этот параметр не поддерживается поставщиками, установленными с параметром, не поддерживается поставщиками, установленными в Windows PowerShell.
Тип: | PSCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-EnableAllPrivileges
Указывает, что этот командлет включает все разрешения текущего пользователя перед командой, которая выполняет вызов WMI.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Impersonation
Задает используемый уровень олицетворения. Допустимые значения для этого параметра:
0
: по умолчанию. Считывает локальный реестр для уровня олицетворения по умолчанию, который обычно имеет значение 3: олицетворение.1
:Анонимный. Скрывает учетные данные вызывающей стороны.2
:Отождествлять. позволяет объектам запрашивать учетные данные вызывающей стороны.3
:Олицетворять. позволяет объектам использовать учетные данные вызывающей стороны.4
:Делегат. Позволяет объектам разрешать другим объектам использовать учетные данные вызывающей стороны.
Тип: | ImpersonationLevel |
Допустимые значения: | Default, Anonymous, Identify, Impersonate, Delegate |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-InputObject
Указывает объект ManagementObject, используемый в качестве входных данных. Если этот параметр используется, все остальные параметры, кроме параметра Arguments , игнорируются.
Тип: | ManagementObject |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Locale
Указывает предпочтительный язык для объектов WMI. Параметр языкового стандарта указан в массиве в формате MS_<LCID> в предпочтительном порядке.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Namespace
Указывает пространство имен репозитория WMI, в котором расположен класс WMI, на который ссылается класс WMI, когда он используется с параметром класса .
Тип: | String |
Aliases: | NS |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Path
Указывает путь объекта WMI экземпляра, который требуется создать или обновить.
Тип: | String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-PutType
Указывает, следует ли создавать или обновлять экземпляр WMI. Допустимые значения для этого параметра:
UpdateOnly
Обновляет существующий экземпляр WMI.CreateOnly
Создает новый экземпляр WMI.UpdateOrCreate
Обновляет экземпляр WMI, если он существует или создает новый экземпляр, если экземпляр не существует.
Тип: | PutType |
Допустимые значения: | None, UpdateOnly, CreateOnly, UpdateOrCreate |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ThrottleLimit
Указывает максимальное число одновременных подключений, которые можно установить для запуска этой команды. Этот параметр используется вместе с параметром AsJob . Предел регулирования применяется только к текущему командлету, а не к сеансу или компьютеру.
Тип: | Int32 |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None
Этот командлет не принимает входные данные.
Выходные данные
None
Этот командлет не создает никакие выходные данные.
Примечания
Windows PowerShell включает следующие псевдонимы для Set-WmiInstance
:
swmi
Связанные ссылки
PowerShell