Set-CimInstance
Modifica una instancia CIM en un servidor CIM llamando al método ModifyInstance de la clase CIM.
Sintaxis
Set-CimInstance
[-ComputerName <String[]>]
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Este cmdlet solo está disponible en la plataforma Windows.
Este cmdlet modifica una instancia CIM en un servidor CIM.
Si no se especifica el parámetro InputObject , el cmdlet funciona de una de las maneras siguientes:
- Si no se especifica el parámetro ComputerName ni el parámetro CimSession , este cmdlet funciona en la sesión local de Instrumental de administración de Windows (WMI) mediante una sesión del modelo de objetos componentes (COM).
- Si se especifica el parámetro ComputerName o el parámetro CimSession, este cmdlet funciona con el servidor CIM especificado por el parámetro ComputerName o el parámetro CimSession.
Si se especifica el parámetro InputObject , el cmdlet funciona de una de las maneras siguientes:
- Si no se especifica el parámetro ComputerName ni el parámetro CimSession , este cmdlet usa la sesión CIM o el nombre de equipo del objeto de entrada.
- Si se especifica el parámetro ComputerName o el parámetro CimSession , este cmdlet usa el valor del parámetro CimSession o el valor del parámetro ComputerName . Esto no es muy común.
Ejemplos
Ejemplo 1: Establecimiento de la instancia CIM
En este ejemplo se establece el valor de la propiedad VariableValue en abcd mediante el parámetro Query . Puede modificar instancias que coincidan con una consulta del lenguaje de consulta de Instrumental de administración de Windows (WQL).
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"}
Ejemplo 2: Establecimiento de la propiedad de instancia CIM mediante la canalización
En este ejemplo se recupera el objeto de instancia CIM filtrado por el parámetro Query mediante el Get-CimInstance
cmdlet . El Set-CimInstance
cmdlet modifica el valor de la propiedad VariableValue a abcd.
Get-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' |
Set-CimInstance -Property @{VariableValue="abcd"}
Ejemplo 3: Establecimiento de la propiedad de instancia CIM mediante el objeto de entrada
$x = Get-CimInstance -Query 'Select * from Win32_Environment where Name="testvar"'
Set-CimInstance -InputObject $x -Property @{VariableValue="somevalue"} -PassThru
En este ejemplo se recuperan los objetos de instancia CIM filtrados por el parámetro Query en en una variable $x
mediante Get-CimInstance
y, a continuación, se pasa el contenido de la variable al Set-CimInstance
cmdlet . Set-CimInstance
a continuación, modifica la propiedad VariableValue a somevalue. Dado que se usa el parámetro Passthru , en este ejemplo se devuelve un objeto de instancia CIM modificado.
Ejemplo 4: Establecimiento de la propiedad de instancia CIM
En este ejemplo se recupera el objeto de instancia CIM especificado en el parámetro Query en una variable $x
mediante el Get-CimInstance
cmdlet y se cambia el valor de la propiedad VariableValue del objeto que se va a cambiar. A continuación, el objeto de instancia CIM se guarda mediante el Set-CimInstance
cmdlet .
Dado que se usa el parámetro Passthru , en este ejemplo se devuelve un objeto de instancia CIM modificado.
$x = Get-CimInstance -Query 'Select * from Win32_Environment where name="testvar"'
$x.VariableValue = "Change"
Set-CimInstance -CimInstance $x -PassThru
Ejemplo 5: Mostrar la lista de instancias CIM que se van a modificar mediante WhatIf
En este ejemplo se usa el parámetro común WhatIf para especificar que no se debe realizar la modificación, sino solo generar lo que sucedería si se hiciera.
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -WhatIf
Ejemplo 6: Establecimiento de la instancia CIM después de la confirmación del usuario
En este ejemplo se usa el parámetro común Confirm para especificar que la modificación debe realizarse solo después de la confirmación del usuario.
Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -Confirm
Ejemplo 7: Establecimiento de la instancia CIM creada
En este ejemplo se crea una instancia CIM con las propiedades especificadas mediante el New-CimInstance
cmdlet y se recupera su contenido en en una variable $x
. A continuación, la variable se pasa al Set-CimInstance
cmdlet , que modifica el valor de la propiedad VariableValue a somevalue.
Dado que se usa el parámetro Passthru , en este ejemplo se devuelve un objeto de instancia CIM modificado.
$x = New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";UserName="domain\user"} -Key Name,UserName -ClientOnly
Set-CimInstance -CimInstance $x -Property @{VariableValue="somevalue"} -PassThru
Parámetros
-CimSession
Ejecuta los cmdlets en un equipo remoto. Escriba un nombre de equipo o un objeto de sesión, como la salida de un New-CimSession
cmdlet o Get-CimSession
.
Tipo: | CimSession[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-ComputerName
Especifica el nombre del equipo en el que desea ejecutar la operación CIM. Puede especificar un nombre de dominio completo (FQDN) o un nombre NetBIOS.
Si no especifica este parámetro, el cmdlet realiza la operación en el equipo local mediante el modelo de objetos componentes (COM).
Si especifica este parámetro, el cmdlet crea una sesión temporal en el equipo especificado mediante el protocolo WsMan.
Si se realizan varias operaciones en el mismo equipo, la conexión mediante una sesión CIM proporciona un mejor rendimiento.
Tipo: | String[] |
Alias: | CN, ServerName |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Confirm
Le solicita su confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InputObject
Especifica un objeto de instancia CIM que se va a usar como entrada.
El parámetro InputObject no enumera las colecciones. Si se pasa una colección, se produce un error. Al trabajar con colecciones, canalice la entrada para enumerar los valores.
Tipo: | CimInstance |
Alias: | CimInstance |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Namespace
Especifica el espacio de nombres para la operación CIM. El espacio de nombres predeterminado es root/cimv2. Puede usar la finalización de tabulación para examinar la lista de espacios de nombres, ya que PowerShell obtiene una lista de espacios de nombres del servidor WMI local para proporcionar la lista de espacios de nombres.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-OperationTimeoutSec
Especifica la cantidad de tiempo que el cmdlet espera una respuesta del equipo. De forma predeterminada, el valor de este parámetro es 0, lo que significa que el cmdlet usa el valor de tiempo de espera predeterminado para el servidor.
Si el parámetro OperationTimeoutSec se establece en un valor menor que el tiempo de espera de reintento de conexión sólido de 3 minutos, los errores de red que duran más que el valor del parámetro OperationTimeoutSec no se pueden recuperar, ya que la operación en el servidor agota el tiempo de espera antes de que el cliente pueda volver a conectarse.
Tipo: | UInt32 |
Alias: | OT |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-PassThru
Devuelve un objeto que representa el elemento con el que está trabajando. De forma predeterminada, este cmdlet no genera ningún resultado.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Property
Especifica las propiedades de la instancia CIM como una tabla hash (mediante pares nombre-valor). Solo se cambian las propiedades especificadas con este parámetro. No se cambian otras propiedades de la instancia CIM.
Tipo: | IDictionary |
Alias: | Arguments |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Query
Especifica una consulta que se va a ejecutar en el servidor CIM para recuperar las instancias CIM en las que se va a ejecutar el cmdlet. Puede especificar el dialecto de consulta mediante el parámetro QueryDialect.
Si el valor especificado contiene comillas dobles ("
), comillas simples ('
) o una barra diagonal inversa (\
), debe escapar esos caracteres prefijos con el carácter de barra diagonal inversa (\
). Si el valor especificado usa el operador WQL LIKE, debe escapar los caracteres siguientes entre corchetes (): porcentaje (%
[]
), subrayado () o corchetes de apertura (_
[
).
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-QueryDialect
Especifica el lenguaje de consulta usado para el parámetro Query. Los valores aceptables para este parámetro son: WQL o CQL. El valor predeterminado es WQL.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-ResourceUri
Especifica el identificador uniforme de recursos (URI) del recurso de la clase o instancia de recursos. El URI se usa para identificar un tipo de recurso en un equipo, como discos o procesos.
Un URI consta de un prefijo y una ruta de acceso a un recurso. Por ejemplo:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
De forma predeterminada, si no especifica este parámetro, se usa el URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
del recurso estándar DMTF y el nombre de clase se anexa a él.
ResourceURI solo se puede usar con sesiones CIM creadas mediante el protocolo WSMan o al especificar el parámetro ComputerName, que crea una sesión CIM mediante WSMan. Si especifica este parámetro sin especificar el parámetro ComputerName o si especifica una sesión CIM creada mediante el protocolo DCOM, obtendrá un error, ya que el protocolo DCOM no admite el parámetro ResourceURI.
Si se especifican tanto el parámetro ResourceUri como el parámetro Filter, se omite el parámetro Filter.
Tipo: | Uri |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Alias: | wi |
Posición: | Named |
Valor predeterminado: | False |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
Salidas
None
De forma predeterminada, este cmdlet no devuelve ninguna salida.
Cuando se usa el parámetro Passthru , este cmdlet devuelve el objeto de instancia CIM modificado.
Notas
PowerShell incluye los siguientes alias para Set-CimInstance
:
- Windows:
scim
Este cmdlet solo está disponible en plataformas Windows.