Compartir a través de


Get-CimInstance

Obtiene las instancias CIM de una clase de un servidor CIM.

Sintaxis

Get-CimInstance
   [-ClassName] <String>
   [-ComputerName <String[]>]
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-QueryDialect <String>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   -ResourceUri <Uri>
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ResourceUri <Uri>]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   -Query <String>
   [-QueryDialect <String>]
   [-Shallow]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ClassName] <String>
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-QueryDialect <String>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   -CimSession <CimSession[]>
   [-ResourceUri <Uri>]
   [-OperationTimeoutSec <UInt32>]
   [-InputObject] <CimInstance>
   [<CommonParameters>]
Get-CimInstance
   [-ResourceUri <Uri>]
   [-ComputerName <String[]>]
   [-OperationTimeoutSec <UInt32>]
   [-InputObject] <CimInstance>
   [<CommonParameters>]
Get-CimInstance
   -ResourceUri <Uri>
   [-ComputerName <String[]>]
   [-KeyOnly]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   [-Shallow]
   [-Filter <String>]
   [-Property <String[]>]
   [<CommonParameters>]
Get-CimInstance
   [-ResourceUri <Uri>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-OperationTimeoutSec <UInt32>]
   -Query <String>
   [-QueryDialect <String>]
   [-Shallow]
   [<CommonParameters>]

Description

El Get-CimInstance cmdlet obtiene las instancias CIM de una clase de un servidor CIM. Puede especificar el nombre de clase o una consulta para este cmdlet. Este cmdlet devuelve uno o varios objetos de instancia CIM que representan una instantánea de las instancias CIM presentes en el 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.

Ejemplos

Ejemplo 1: Obtener las instancias CIM de una clase especificada

En este ejemplo se recuperan las instancias CIM de una clase denominada Win32_Process.

Get-CimInstance -ClassName Win32_Process

Ejemplo 2: Obtener una lista de espacios de nombres de un servidor WMI

En este ejemplo se recupera una lista de espacios de nombres en el espacio de nombres Raíz en un servidor WMI.

Get-CimInstance -Namespace root -ClassName __Namespace

Ejemplo 3: Obtención de instancias de una clase filtrada mediante una consulta

En este ejemplo se recuperan todas las instancias CIM que comienzan con la letra P de una clase denominada Win32_Process mediante la consulta especificada por un parámetro Query .

Get-CimInstance -Query "SELECT * from Win32_Process WHERE name LIKE 'P%'"

Ejemplo 4: Obtención de instancias de una clase filtrada mediante un nombre de clase y una expresión de filtro

En este ejemplo se recuperan todas las instancias CIM que comienzan con la letra P de una clase denominada Win32_Process mediante el parámetro Filter.

Get-CimInstance -ClassName Win32_Process -Filter "Name like 'P%'"

Ejemplo 5: Obtención de las instancias CIM con solo las propiedades clave rellenadas

En este ejemplo se crea una nueva instancia CIM en memoria para una clase denominada Win32_Process con la propiedad @{ "Handle"=0 } key y la almacena en una variable denominada $x. La variable se pasa como una instancia CIM al Get-CimInstance cmdlet para obtener una instancia determinada.

$x = New-CimInstance -ClassName Win32_Process -Namespace root\cimv2 -Property @{ "Handle"=0 } -Key Handle -ClientOnly
Get-CimInstance -CimInstance $x

Ejemplo 6: Recuperar instancias CIM y reutilizarlas

En este ejemplo se obtienen las instancias CIM de una clase denominada Win32_Process y las almacena en las variables $x y $y. A continuación, la variable $x tiene el formato en una tabla que contiene solo las propiedades Name y KernelModeTime , la tabla establecida en AutoSize.

$x,$y = Get-CimInstance -ClassName Win32_Process
$x | Format-Table -Property Name,KernelModeTime -AutoSize

Name                 KernelModeTime
----                 --------------
System Idle Process 157238797968750

Ejemplo 7: Obtención de instancias CIM del equipo remoto

En este ejemplo se recuperan las instancias CIM de una clase denominada Win32_ComputerSystem de los equipos remotos denominados Server01 y Server02.

Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName Server01,Server02

Ejemplo 8: Obtener solo las propiedades clave, en lugar de todas las propiedades

En este ejemplo solo se recuperan las propiedades clave, lo que reduce el tamaño del objeto y el tráfico de red.

$x = Get-CimInstance -Class Win32_Process -KeyOnly
$x | Invoke-CimMethod -MethodName GetOwner

Ejemplo 9: Obtener solo un subconjunto de propiedades, en lugar de todas las propiedades

En este ejemplo solo se recupera un subconjunto de propiedades, lo que reduce el tamaño del objeto y el tráfico de red.

Get-CimInstance -Class Win32_Process -Property Name,KernelModeTime
$x = Get-CimInstance -Class Win32_Process -Property Name,KernelModeTime
$x | Invoke-CimMethod -MethodName GetOwner

La instancia recuperada con el parámetro Property se puede usar para realizar otras operaciones CIM, por ejemplo Set-CimInstance , o Invoke-CimMethod.

Ejemplo 10: Obtención de la instancia CIM mediante la sesión CIM

En este ejemplo se crea una sesión CIM en los equipos denominados Server01 y Server02 mediante el New-CimSession cmdlet y se almacena la información de sesión en una variable denominada $s. A continuación, el contenido de la variable se pasa a Get-CimInstance mediante el parámetro CimSession para obtener las instancias CIM de la clase denominada Win32_ComputerSystem.

$s = New-CimSession -ComputerName Server01,Server02
Get-CimInstance -ClassName Win32_ComputerSystem -CimSession $s

Parámetros

-CimSession

Especifica la sesión CIM que se va a usar para este cmdlet. Escriba una variable que contenga la sesión CIM o un comando que cree o obtenga la sesión CIM, como los New-CimSession cmdlets 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 para la que se van a recuperar las instancias cim. 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

-ComputerName

Especifica el 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 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, conéctese mediante una sesión CIM para mejorar el 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

-Filter

Especifica una cláusula where que se va a usar como filtro. Especifique la cláusula en el lenguaje de consulta WQL o CQL . No incluya la WHERE palabra clave en el valor del parámetro .

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-InputObject

Especifica un objeto de instancia CIM que se va a usar como entrada.

Si ya está trabajando con un objeto de instancia CIM, puede usar este parámetro para pasar el objeto de instancia CIM para obtener la instantánea más reciente del servidor CIM. Cuando se pasa un objeto de instancia CIM como entrada, Get-CimInstance devuelve el objeto del servidor mediante una operación get CIM, en lugar de una operación de enumeración o consulta. El uso de una operación get CIM es más eficaz que recuperar todas las instancias y, a continuación, filtrarlas.

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.

Si la clase CIM no implementa la operación get, la especificación del parámetro InputObject devuelve un error.

Tipo:CimInstance
Alias:CimInstance
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-KeyOnly

Indica que solo se devuelven objetos con propiedades de clave rellenadas. La especificación del parámetro KeyOnly reduce la cantidad de datos transferidos a través de la red.

Use el parámetro KeyOnly para devolver solo una pequeña parte del objeto, que se puede usar para otras operaciones, como los Set-CimInstance cmdlets o Get-CimAssociatedInstance .

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Namespace

Especifica el espacio de nombres de la clase 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

-Property

Especifica un conjunto de propiedades de instancia que se van a recuperar. Use este parámetro cuando necesite reducir el tamaño del objeto devuelto, ya sea en memoria o a través de la red. El objeto devuelto también contiene las propiedades clave incluso si no las ha enumerado mediante el parámetro Property . Hay otras propiedades de la clase, pero no se rellenan.

Tipo:String[]
Alias:SelectProperties
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. 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 corchete [de apertura.

No puede usar una consulta de metadatos para recuperar una lista de clases o una consulta de eventos. Para recuperar una lista de clases, use el Get-CimClass cmdlet . Para recuperar una consulta de eventos, use el Register-CimIndicationEvent cmdlet .

Puede especificar el dialecto de consulta mediante el parámetro QueryDialect .

Tipo:String
Posición:Named
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

-Shallow

Indica que las instancias de una clase se devuelven sin incluir las instancias de ninguna clase secundaria. De forma predeterminada, el cmdlet devuelve las instancias de una clase y sus clases secundarias.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

CimInstance

Puede canalizar un objeto de instancia CIM a este cmdlet.

Salidas

CimInstance

Este cmdlet devuelve uno o varios objetos de instancia CIM que representan una instantánea de las instancias CIM en el servidor CIM.