about_WMI

Se aplica a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

TEMA

about_WMI

DESCRIPCIÓN BREVE

El Instrumental de administración de Windows (WMI) usa el Modelo de información común (CIM) para representar sistemas, aplicaciones, redes, dispositivos y otros componentes administrables de la empresa moderna.

DESCRIPCIÓN LARGA

El Instrumental de administración de Windows (WMI) es la implementación de Microsoft del estándar de la industria Web-Based Enterprise Management (WBEM).

El WMI clásico usa DCOM para comunicarse con dispositivos de red para administrar sistemas remotos. Windows PowerShell® 3.0 presenta un modelo de proveedor de CIM que usa WinRM para quitar la dependencia de DCOM. Este modelo de proveedor de CIM también usa las nuevas API de proveedor de WMI que permiten a los desarrolladores escribir cmdlets de Windows PowerShell en código nativo (C++).

No confunda los proveedores de WMI con los proveedores de Windows PowerShell. Muchas características de Windows tienen un proveedor de WMI asociado que expone sus capacidades de administración. Para obtener proveedores de WMI, ejecute una consulta de WMI que obtenga instancias de la clase __Provider de WMI, como la consulta siguiente.

        Get-WmiObject -Class __Provider

TRES COMPONENTES DE WMI

Los tres componentes siguientes de WMI interactúan con Windows PowerShell: espacios de nombres, proveedores y clases.

Los espacios de nombres de WMI organizan los proveedores de WMI y las clases WMI en grupos de componentes relacionados. En este sentido, son similares a los espacios de nombres de .NET Framework. Los espacios de nombres no son ubicaciones físicas, sino más bien bases de datos lógicas. Todos los espacios de nombres de WMI son instancias de la clase del sistema __Namespace. El espacio de nombres de WMI predeterminado es Root/CIMV2 (desde Microsoft Windows 2000). Para usar Windows PowerShell con el fin de obtener los espacios de nombres de WMI de la sesión actual, use un comando con el formato siguiente.

        Get-WmiObject -Class __Namespace

Para obtener los espacios de nombres de WMI en otros espacios de nombres, use el parámetro Namespace para cambiar la ubicación de la búsqueda. El comando siguiente busca los espacios de nombres de WMI que residen en el espacio de nombres Root/Cimv2/Applications.

        Get-WmiObject -Class __Namespace -Namespace 
        root/CIMv2/applications

Los espacios de nombres de WMI son jerárquicos. Por lo tanto, para obtener una lista de todos los espacios de nombres de un sistema determinado, es necesario realizar una consulta recursiva empezando por el espacio de nombres raíz.

Los proveedores de WMI exponen información sobre objetos administrables de Windows. Un proveedor recupera datos de un componente y los pasa a través de WMI a una aplicación de administración, como Windows PowerShell. La mayoría de los proveedores de WMI son proveedores dinámicos, lo que significa que obtienen los datos dinámicamente cuando se solicita a través de la aplicación de administración.

BUSCAR CLASES WMI

En una instalación predeterminada de Windows 8, hay más de 1.100 clases WMI en Root/Cimv2. Dada esta cantidad de clases WMI, el desafío consiste en identificar la clase WMI apropiada para realizar una tarea específica. Windows PowerShell 3.0 proporciona dos maneras de buscar clases WMI relacionadas con un tema específico.

Por ejemplo, para encontrar las clases WMI del espacio de nombres de WMI root\CIMV2 que están relacionadas con los discos, puede usar una consulta como la que se muestra aquí.

        Get-WmiObject -List *disk*

Para encontrar las clases WMI que están relacionadas con la memoria, puede usar una consulta como la que se muestra aquí.

        Get-WmiObject -List *memory*

Los cmdlets de CIM también ofrecen la capacidad para descubrir clases WMI. Para ello, use el cmdlet Get-CIMClass. El comando que se muestra a continuación enumera las clases WMI relacionadas con el vídeo.

        Get-CimClass *video*

La expansión de tabulador funciona al cambiar los espacios de nombres de WMI, por lo que puede usarla para detectar fácilmente los subespacios de nombres de WMI. En el ejemplo siguiente, el cmdlet Get-CimClass enumera las clases WMI relacionadas con la configuración de energía. Para encontrarlo, escriba el espacio de nombres de WMI root/CIMV2/ y presione la tecla TAB varias veces hasta que aparezca el espacio de nombres power. Este es el comando:

        Get-CimClass *power* -Namespace root/cimv2/power