Set-CimInstance
Изменяет экземпляр CIM на сервере CIM путем вызова метода ModifyInstance класса CIM.
Синтаксис
CimInstanceComputerSet (по умолчанию)
Set-CimInstance
[-InputObject] <CimInstance>
[-ComputerName <String[]>]
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CimInstanceSessionSet
Set-CimInstance
[-InputObject] <CimInstance>
-CimSession <CimSession[]>
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
QuerySessionSet
Set-CimInstance
[-Query] <String>
-CimSession <CimSession[]>
-Property <IDictionary>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-QueryDialect <String>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
QueryComputerSet
Set-CimInstance
[-Query] <String>
-Property <IDictionary>
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-QueryDialect <String>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Этот командлет доступен только на платформе Windows.
Этот командлет изменяет экземпляр CIM на сервере CIM.
Если параметр InputObject не указан, командлет работает одним из следующих способов:
- Если не указан ни параметр ComputerName, ни параметр CimSession, то этот командлет выполняется в локальном сеансе Windows Management Instrumentation (WMI) с помощью сеанса Component Object Model (COM).
- Если указан либо параметр ComputerName, либо параметр CimSession, тогда этот командлет работает с сервером CIM, заданным либо параметром ComputerName, либо параметром CimSession.
Если указан параметр InputObject, командлет работает одним из следующих способов:
- Если ни параметр ComputerName, ни параметр CimSession не указан, этот командлет использует сеанс CIM или имя компьютера из входного объекта.
- Если указан параметр ComputerName или параметр CimSession, этот командлет использует значение параметра CimSession или значение параметра ComputerName. Это не очень распространено.
Примеры
Пример 1. Установка экземпляра CIM
В этом примере значение свойства VariableValue присваивается abcd с помощью параметра Query. Можно изменить экземпляры, соответствующие запросу языка запросов инструментария управления Windows (WQL).
$instance = @ {
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
}
Set-CimInstance @instance
Пример 2. Установка свойства экземпляра CIM с помощью конвейера
В этом примере извлекается объект экземпляра CIM, отфильтрованный параметром запроса с помощью командлета Get-CimInstance
. Командлет Set-CimInstance
изменяет значение свойства VariableValue на abcd.
Get-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' |
Set-CimInstance -Property @{VariableValue="abcd"}
Пример 3. Установка свойства экземпляра CIM с помощью входного объекта
$x = Get-CimInstance -Query 'Select * from Win32_Environment where Name="testvar"'
Set-CimInstance -InputObject $x -Property @{VariableValue="somevalue"} -PassThru
В этом примере извлекаются объекты экземпляра CIM, отфильтрованные параметром запроса в переменную с помощью$x
, а затем передает содержимое переменной Get-CimInstance
командлетуSet-CimInstance
.
Set-CimInstance
затем изменяет свойство VariableValue на некоторое значение.
Так как используется параметр PassThru, в этом примере возвращается измененный объект экземпляра CIM.
Пример 4. Установка свойства экземпляра CIM
В этом примере извлекается объект экземпляра CIM, указанный в параметре query , в переменную $x
с помощью Get-CimInstance
командлета, и изменяет значение свойства VariableValue объекта на изменение. Затем объект экземпляра CIM сохраняется с помощью командлета Set-CimInstance
.
Так как используется параметр PassThru, в этом примере возвращается измененный объект экземпляра CIM.
$x = Get-CimInstance -Query 'Select * from Win32_Environment where name="testvar"'
$x.VariableValue = "Change"
Set-CimInstance -CimInstance $x -PassThru
Пример 5. Отображение списка экземпляров CIM для изменения с помощью WhatIf
В этом примере используется общий параметр WhatIf , чтобы указать, что изменение не должно выполняться, но выводить только то, что произойдет, если это было сделано.
$instance = @{
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
WhatIf = $true
}
Set-CimInstance @instance
Пример 6. Установка экземпляра CIM после подтверждения от пользователя
В этом примере используется общий параметр Confirm , чтобы указать, что изменение должно выполняться только после подтверждения от пользователя.
$instance = @{
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
Confirm = $true
}
Set-CimInstance @instance
Пример 7. Установка созданного экземпляра CIM
В этом примере создается экземпляр CIM с указанными свойствами с помощью командлета New-CimInstance
и извлекается его содержимое в переменную $x
. Затем переменная передается командлету Set-CimInstance
, который изменяет значение свойства VariableValue на некоторое значение.
Так как используется параметр PassThru, в этом примере возвращается измененный объект экземпляра CIM.
$instance = @{
ClassName = 'Win32_Environment'
Property = @{
Name="testvar"
UserName="domain\user"
}
Key = 'Name', 'UserName'
ClientOnly = $true
}
$x = New-CimInstance @instance
Set-CimInstance -CimInstance $x -Property @{VariableValue="somevalue"} -PassThru
Параметры
-CimSession
Выполняет командлеты на удаленном компьютере. Введите имя компьютера или объект сеанса, например выходные данные командлета New-CimSession
или Get-CimSession
.
Свойства параметра
Тип: | |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
CimInstanceSessionSet
Position: | Named |
Обязательно: | True |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
QuerySessionSet
Position: | Named |
Обязательно: | True |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-ComputerName
Указывает имя компьютера, на котором требуется выполнить операцию CIM. Можно указать полное доменное имя (FQDN) или имя NetBIOS.
Если этот параметр не указан, командлет выполняет операцию на локальном компьютере с помощью объектной модели компонента (COM).
При указании этого параметра командлет создает временный сеанс для указанного компьютера с помощью протокола WsMan.
Если на одном компьютере выполняются несколько операций, подключение с помощью сеанса CIM обеспечивает более высокую производительность.
Свойства параметра
Тип: | String[] |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | Китай, Имя сервера |
Наборы параметров
CimInstanceComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
QueryComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-Confirm
Запрашивает подтверждение перед запуском cmdlet.
Свойства параметра
Тип: | SwitchParameter |
Default value: | False |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | cf |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-InputObject
Указывает объект экземпляра CIM для использования в качестве входных данных.
Параметр InputObject не перечисляет коллекции. В случае передачи коллекции возникает ошибка. При работе с коллекциями направьте входные данные для перечисления значений.
Свойства параметра
Тип: | CimInstance |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | CimInstance |
Наборы параметров
CimInstanceComputerSet
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
CimInstanceSessionSet
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | True |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-Namespace
Указывает пространство имен для операции CIM. Пространство имен по умолчанию — корневой/CIMV2. Вы можете использовать завершение вкладки для просмотра списка пространств имен, так как PowerShell получает список пространств имен с локального сервера WMI для предоставления списка пространств имен.
Свойства параметра
Тип: | String |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
QuerySessionSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
QueryComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-OperationTimeoutSec
Указывает период времени, в течение которого командлет ожидает ответа от компьютера. По умолчанию значение этого параметра равно 0, что означает, что командлет использует значение времени ожидания по умолчанию для сервера.
Если параметр OperationTimeoutSec имеет значение меньше времени ожидания надежного повтора подключения в 3 минуты, сетевые сбои, длящиеся дольше, чем значение параметра OperationTimeoutSec, не подлежат восстановлению, так как время операции на сервере истекает до того, как клиент успевает переподключиться.
Свойства параметра
Тип: | UInt32 |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | OT |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-PassThru
Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не создает выходные данные.
Свойства параметра
Тип: | SwitchParameter |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
-Property
Указывает свойства экземпляра CIM в виде хэш-таблицы (с помощью пар "имя-значение"). Изменяются только свойства, указанные с помощью этого параметра. Другие свойства экземпляра CIM не изменяются.
Свойства параметра
Тип: | IDictionary |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | Аргументы |
Наборы параметров
CimInstanceComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
CimInstanceSessionSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
QuerySessionSet
Position: | Named |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
QueryComputerSet
Position: | Named |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-Query
Указывает запрос для запуска на сервере CIM для получения экземпляров CIM, на которых выполняется командлет. Можно указать диалект запроса с помощью параметра QueryDialect.
Если указанное значение содержит двойные кавычки (), одинарные кавычки ("
'
) или обратную косую черту (\
), необходимо экранировать эти символы, префиксируя их с помощью символа обратной косой черты (\
). Если указанное значение использует оператор WQL LIKE, необходимо экранировать следующие символы, заключив их в квадратные скобки (): процент[]
(), подчеркивание (%
_
) или открывающую квадратную скобку ([
).
Свойства параметра
Тип: | String |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
QuerySessionSet
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
QueryComputerSet
Position: | 0 |
Обязательно: | True |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-QueryDialect
Указывает язык запросов, используемый для параметра query. Допустимые значения для этого параметра: WQL или CQL. Значение по умолчанию — WQL.
Свойства параметра
Тип: | String |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
QuerySessionSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
QueryComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-ResourceUri
Указывает универсальный идентификатор ресурса (URI) класса ресурса или экземпляра. Универсальный код ресурса (URI) используется для определения определенного типа ресурса, например дисков или процессов на компьютере.
URI состоит из префикса и пути к ресурсу. Рассмотрим пример.
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
По умолчанию, если этот параметр не указан, используется стандартный универсальный код ресурса DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
, а имя класса добавляется к нему.
ResourceUri можно использовать только с сеансами CIM, созданными с помощью протокола WSMan, или при указании параметра ComputerName, который создает сеанс CIM с помощью WSMan. Если этот параметр указан без указания параметра ComputerName или при указании сеанса CIM, созданного с помощью протокола DCOM, возникает ошибка, так как протокол DCOM не поддерживает параметр ResourceUri.
Если заданы и параметр ResourceUri, и параметр фильтра, параметр фильтра игнорируется.
Свойства параметра
Тип: | Uri |
Default value: | None |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Наборы параметров
CimInstanceComputerSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
CimInstanceSessionSet
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | True |
Значение из оставшихся аргументов: | False |
-WhatIf
Показывает, что произойдет, если командлет будет запущен. Командлет не запускается.
Свойства параметра
Тип: | SwitchParameter |
Default value: | False |
Поддерживаются подстановочные знаки: | False |
DontShow: | False |
Aliases: | wi |
Наборы параметров
(All)
Position: | Named |
Обязательно: | False |
Значение из конвейера: | False |
Значение из конвейера по имени свойства: | False |
Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
CimInstance
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
CimInstance
При использовании параметра PassThru этот командлет возвращает измененный объект экземпляра CIM.
Примечания
PowerShell включает следующие псевдонимы для Set-CimInstance
:
- Виндоус:
scim
Этот командлет доступен только на платформах Windows.