New-CimInstance
Crea una instancia CIM.
Sintaxis
New-CimInstance
[-ClassName] <String>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-ClassName] <String>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
-ResourceUri <Uri>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
-ResourceUri <Uri>
[-Key <String[]>]
[[-Property] <IDictionary>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-CimClass] <CimClass>
[[-Property] <IDictionary>]
[-OperationTimeoutSec <UInt32>]
-CimSession <CimSession[]>
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CimInstance
[-CimClass] <CimClass>
[[-Property] <IDictionary>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String[]>]
[-ClientOnly]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Este cmdlet solo está disponible en la plataforma Windows.
El cmdlet New-CimInstance
crea una instancia de una clase CIM basada en la definición de clase en el equipo local o en un equipo remoto. De forma predeterminada, el cmdlet New-CimInstance
crea una instancia en el equipo local.
Ejemplos
Ejemplo 1: Creación de una instancia de una clase CIM
En este ejemplo se crea una instancia de una clase CIM denominada win32_environment en el espacio de nombres root/cimv2 del equipo.
New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";VariableValue="testvalue";UserName="domain\user"}
No se realiza ninguna validación del lado cliente si la clase no existe, las propiedades son incorrectas o si el servidor rechaza la llamada. Si la instancia se crea correctamente, el cmdlet genera la instancia recién creada.
Ejemplo 2: Creación de una instancia de una clase CIM mediante un esquema de clase
En este ejemplo se recupera un objeto de clase CIM y se almacena en una variable denominada $class
. A continuación, el contenido de la variable se pasa al cmdlet New-CimInstance
.
$class = Get-CimClass -ClassName Win32_Environment
New-CimInstance -CimClass $class -Property @{Name="testvar";VariableValue="testvalue";UserName="Contoso\User1"}
Ejemplo 3: Creación de una instancia dinámica en el cliente
En este ejemplo se crea una instancia dinámica de una clase CIM denominada Win32_Process en el equipo cliente sin obtener la instancia del servidor. La nueva instancia se almacena en la variable $a
. Esta instancia dinámica se puede usar para realizar operaciones si la instancia con esta clave existe en el servidor.
$a = New-CimInstance -ClassName Win32_Process -Property @{Handle=0} -Key Handle -ClientOnly
Get-CimInstance -CimInstance $a
Invoke-CimMethod -CimInstance $a -MethodName GetOwner
ProcessId Name HandleCount WorkingSetSize VirtualSize
--------- ---- ----------- -------------- -----------
0 System Idle Process 0 8192 8192
Domain :
ReturnValue : 2
User :
PSComputerName :
A continuación, el cmdlet Get-CimInstance
recupera una única instancia determinada. El cmdlet Invoke-CimMethod
llama al método GetOwner en la instancia recuperada.
Ejemplo 4: Creación de una instancia para una clase CIM de un espacio de nombres específico
En este ejemplo se obtiene una instancia de una clase CIM denominada MSFT_Something en el espacio de nombres raíz o en algún lugar y la almacena en una variable denominada $class
. La variable se pasa al cmdlet New-CimInstance
para crear una nueva instancia CIM y realizar validaciones del lado cliente en la nueva instancia.
$class = Get-CimClass -ClassName MSFT_Something -Namespace root/somewhere
New-CimInstance -CimClass $class -Property @{"Prop1"=1;"Prop2"="value"} -ClientOnly
En este ejemplo, el uso del parámetro CimClass en lugar del parámetro ClassName valida que Prop1 y Prop2 existen realmente y que las claves están marcadas correctamente.
No se puede usar el parámetro ComputerName o CimSession con el parámetro ClientOnly.
Parámetros
-CimClass
Especifica un objeto de clase CIM que representa el tipo de la instancia. Use el cmdlet Get-CimClass
para recuperar la declaración de clase de un equipo. El uso de este parámetro da como resultado mejores validaciones de esquema del lado cliente.
Tipo: | CimClass |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-CimSession
Ejecuta el comando mediante la sesión CIM especificada. Escriba una variable que contenga la sesión CIM o un comando que cree o obtenga la sesión CIM, como los cmdlets New-CimSession
o Get-CimSession
. Para obtener más información, consulte about_CimSession.
Tipo: | CimSession[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-ClassName
Especifica el nombre de la clase CIM de la que la operación crea una instancia. NOTA: puede usar la finalización de tabulación para examinar la lista de clases, ya que PowerShell obtiene una lista de clases del servidor WMI local para proporcionar una lista de nombres de clase.
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-ClientOnly
Indica que la instancia solo se crea en PowerShell sin ir al servidor CIM. Puede usar este parámetro para crear una instancia CIM en memoria para usarla en las operaciones posteriores de PowerShell.
Tipo: | SwitchParameter |
Alias: | Local |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
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), un nombre NetBIOS o una dirección IP.
Si especifica este parámetro, el cmdlet crea una sesión temporal en el equipo especificado mediante el protocolo WSMan.
Si no especifica este parámetro, el cmdlet realiza la operación en el equipo local mediante el modelo de objetos componentes (COM).
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: | True |
Aceptar caracteres comodín: | False |
-Confirm
Le pide 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 |
-Key
Especifica las propiedades que se usan como claves. CimSession y ComputerName no se pueden si no se ha especificado Clave.
Tipo: | String[] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Namespace
Especifica el espacio de nombres de la clase para la nueva instancia. 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 servidor CIM. 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 |
-Property
Especifica las propiedades de la instancia CIM mediante una tabla hash (pares nombre-valor).
Si especifica el parámetro CimClass, el cmdlet New-CimInstance
realiza una validación de propiedad en el cliente para asegurarse de que las propiedades especificadas son coherentes con la declaración de clase en el servidor. Si no se especifica el parámetro CimClass, la validación de propiedades se realiza en el servidor.
Tipo: | IDictionary |
Alias: | Arguments |
Posición: | 1 |
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 específico de recurso, como discos o procesos, en un equipo.
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 del recurso estándar DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
y el nombre de clase se anexa a él.
Si se especifican tanto el parámetro
Tipo: | Uri |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si el cmdlet se ejecuta. 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
None
No se pueden canalizar objetos a este cmdlet.
Salidas
Este cmdlet devuelve un objeto que contiene la información de la instancia CIM.
Notas
PowerShell incluye los siguientes alias para New-CimInstance
:
- Windows:
ncim
Este cmdlet solo está disponible en plataformas Windows.