Cómo mostrar todas las propiedades de un objeto PowerShell
-
Use
Get-WmiObject
para mostrar todas las propiedades de un objeto de PowerShell - Recuperar la información de instancia/clase de objeto
-
Use el cmdlet
Format-List
para mostrar propiedades - Conclusión

Existen requisitos para encontrar información sobre la máquina con Windows y sus componentes, como la red, las aplicaciones y los servicios. El Modelo de Información Común (CIM) es un estándar de código abierto para manipular estos componentes y su información.
Microsoft ha implementado su estándar sobre CIM llamado Instrumentación de Administración de Windows (WMI) para consultar y manipular la información de la computadora, los servicios y la red.
Use Get-WmiObject
para mostrar todas las propiedades de un objeto de PowerShell
El cmdlet Get-WmiObject
es una herramienta poderosa, particularmente para tareas de administración y gestión de sistemas. Permite acceder a los datos de la Instrumentación de Administración de Windows (WMI), que incluye una gran cantidad de información sobre el sistema, como detalles sobre hardware, software instalado, configuración de red y más.
Una de las capacidades menos conocidas pero potentes de Get-WmiObject
es el uso del parámetro -List
. Esta opción permite a los usuarios recuperar una lista de todas las clases WMI dentro de un espacio de nombres específico.
La sintaxis básica de Get-WmiObject -List
es:
Get-WmiObject -List [-Namespace <String>] [-ComputerName <String>]
Los parámetros clave incluyen:
-Namespace <String>
: Especifica el espacio de nombres del repositorio WMI. El valor predeterminado esroot\cimv2
, que contiene la mayoría de las clases WMI comúnmente utilizadas.-ComputerName <String>
: Apunta a una computadora remota. Sin este parámetro, el cmdlet opera en la máquina local.
Por lo tanto, el proceso de gestión del sistema Windows se vuelve mucho más fácil. Verifiquemos las clases disponibles usando el cmdlet Get-WmiObject
.
Get-WmiObject -List
Este comando mostrará todas las clases disponibles en el espacio de nombres predeterminado de su máquina local. El espacio de nombres predeterminado es ROOT\cimv2
en la computadora con Windows.
Salida:
Es posible especificar un espacio de nombres diferente al predeterminado (ROOT\cimv2
). Podemos utilizar el parámetro -Namespace
para cambiar el espacio de nombres predeterminado.
Get-WmiObject -Namespace <custom_namespace>
Recuperar la información de instancia/clase de objeto
El uso de Get-WmiObject -Class
es principalmente para recuperar información detallada sobre un aspecto particular del sistema. Por ejemplo, consultar la clase Win32_Processor
proporciona información sobre el procesador, mientras que Win32_OperatingSystem
revela detalles sobre el sistema operativo.
El parámetro -Class
de este cmdlet permite a los usuarios consultar clases específicas dentro del repositorio WMI, que son esencialmente plantillas para los objetos que representan información del sistema. Estas clases cubren una amplia gama de datos, desde detalles de hardware hasta configuraciones.
Sintaxis:
Get-WmiObject -Class <String> [-Namespace <String>] [-ComputerName <String>]
Los parámetros clave incluyen:
-Class <String>
: Especifica la clase WMI para la cual se requiere información.-Namespace <String>
: Opcional. Especifica el espacio de nombres del repositorio WMI (el valor predeterminado esroot\cimv2
).-ComputerName <String>
: Opcional. Dirige el comando a una computadora remota.
Hay cientos de clases WMI disponibles para usar. Podemos recuperar la información para una clase dada, como se muestra a continuación.
Get-WmiObject -Class Win32_computersystem
Aquí, estamos recuperando información para la clase Win32_computersystem
. Devuelve el objeto Win32_computersystem
con sus propiedades, que contiene toda la información sobre el sistema informático, como se muestra a continuación.
Hay un número limitado de propiedades mostradas en la salida. El objeto Win32_computersystem
contiene más propiedades que estas.
Podemos usar el cmdlet Format-List
para mostrar todas las propiedades de un objeto recuperado.
Use el cmdlet Format-List
para mostrar propiedades
El Format-List
se puede encadenar con la salida de otro comando para formatear los resultados. Este cmdlet puede mostrar las propiedades especificadas o todas las propiedades de un objeto WMI recuperado en un formato legible.
Sintaxis:
Get-WmiObject -Class Win32_computersystem | Format-List -Property Name, Model, Manufacturer
Especificamos algunas propiedades para la instancia Win32_computersystem
.
Format-List [-Property <PropertyName[]>]
: Formatea la salida como una lista.-Property <PropertyName[]>
: (Opcional) Especifica las propiedades a mostrar. Si se omite, se muestran todas las propiedades.
Salida:
El Get-WmiObject
devuelve las propiedades predeterminadas para el objeto Win32_computersystem
. Entonces, la salida se enviará a través del operador de tubería (|
) al comando Format-List
.
Podemos pasar el parámetro -Property
al cmdlet Format-List
. Eso filtrará la salida final con las tres propiedades dadas.
A veces, es importante verificar todas las propiedades y valores disponibles para un objeto WMI específico. En ese caso, debe usar -Property *
para recuperar todas las propiedades disponibles y sus valores.
El *
indica todas las propiedades.
Get-WmiObject -Class Win32_computersystem | Format-List -Property *
Salida:
La salida contiene todas las propiedades y los valores disponibles para el objeto Win32_computersystem
. Podemos omitir el parámetro -Property
en el comando anterior y escribirlo.
Get-WmiObject -Class Win32_computersystem | Format-List *
El comando anterior debería mostrar la misma salida que la anterior.
Conclusión
En esta exploración del Get-WmiObject
de PowerShell, hemos descubierto su papel fundamental en la gestión del sistema Windows. El parámetro -List
empodera a los usuarios para enumerar todas las clases WMI, ayudando en la identificación de fuentes de datos relevantes.
Centrado en -Class
, demostramos su precisión en la recuperación de información detallada del sistema, ejemplificada con Win32_ComputerSystem
. La adición de Format-List
mejora la legibilidad de la salida, que es crucial al tratar con listas de propiedades extensas.
Para profundizar su conocimiento, explore diversas clases WMI como Win32_Processor
o Win32_OperatingSystem
. Incorporar Get-WmiObject
en scripts puede agilizar las tareas de gestión del sistema.
Como herramienta versátil, Get-WmiObject
satisface tanto a principiantes como a usuarios experimentados, epitomizando su importancia en PowerShell para diversas tareas de TI y automatización.
Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.