Como Mostrar Todas as Propriedades de um Objeto PowerShell
-
Use
Get-WmiObject
para Mostrar Todas as Propriedades de um Objeto PowerShell - Recuperar a Informação da Instância/Objeto da Classe
-
Use o Cmdlet
Format-List
para Exibir Propriedades - Conclusão

Existem requisitos para encontrar informações sobre a máquina Windows e seus componentes, como rede, aplicativos e serviços. O Modelo Comum de Informação (CIM) é um padrão de código aberto para manipular esses componentes e suas informações.
A Microsoft implementou seu padrão sobre o CIM chamado Instrumentação de Gerenciamento do Windows (WMI) para consultar e manipular informações de computador, serviço e rede.
Use Get-WmiObject
para Mostrar Todas as Propriedades de um Objeto PowerShell
O cmdlet Get-WmiObject
é uma ferramenta poderosa, especialmente para tarefas de administração e gerenciamento de sistema. Ele permite o acesso a dados da Instrumentação de Gerenciamento do Windows (WMI), que inclui uma riqueza de informações sobre o sistema, como detalhes sobre hardware, software instalado, configuração de rede e muito mais.
Uma das capacidades menos conhecidas, mas potentes, do Get-WmiObject
é usar o parâmetro -List
. Esta opção permite que os usuários recuperem uma lista de todas as classes WMI dentro de um namespace especificado.
A sintaxe básica de Get-WmiObject -List
é:
Get-WmiObject -List [-Namespace <String>] [-ComputerName <String>]
Os principais parâmetros incluem:
-Namespace <String>
: Especifica o namespace do repositório WMI. O padrão éroot\cimv2
, que contém a maioria das classes WMI comumente usadas.-ComputerName <String>
: Destina-se a um computador remoto. Sem este parâmetro, o cmdlet opera na máquina local.
Portanto, o processo de gerenciamento do sistema Windows se torna muito mais fácil. Vamos verificar as classes disponíveis usando o cmdlet Get-WmiObject
.
Get-WmiObject -List
Este comando irá retornar todas as classes disponíveis no namespace padrão da sua máquina local. O namespace padrão é ROOT\cimv2
no computador Windows.
Saída:
É possível especificar um namespace diferente do padrão (ROOT\cimv2
). Podemos usar o parâmetro -Namespace
para alterar o namespace padrão.
Get-WmiObject -Namespace <custom_namespace>
Recuperar a Informação da Instância/Objeto da Classe
O uso de Get-WmiObject -Class
é principalmente para recuperar informações detalhadas sobre um aspecto particular do sistema. Por exemplo, consultar a classe Win32_Processor
fornece informações sobre o processador, enquanto Win32_OperatingSystem
revela detalhes sobre o sistema operacional.
O parâmetro -Class
deste cmdlet permite que os usuários consultem classes específicas dentro do repositório WMI, que são essencialmente modelos para os objetos que representam informações do sistema. Essas classes cobrem uma ampla gama de dados, desde detalhes de hardware até configurações.
Sintaxe:
Get-WmiObject -Class <String> [-Namespace <String>] [-ComputerName <String>]
Os principais parâmetros incluem:
-Class <String>
: Especifica a classe WMI para a qual as informações são necessárias.-Namespace <String>
: Opcional. Especifica o namespace do repositório WMI (o padrão éroot\cimv2
).-ComputerName <String>
: Opcional. Direciona o comando para um computador remoto.
Existem centenas de classes WMI disponíveis para uso. Podemos recuperar a informação para uma classe específica, como mostrado a seguir.
Get-WmiObject -Class Win32_computersystem
Aqui, estamos recuperando informações para a classe Win32_computersystem
. Ele retorna o objeto Win32_computersystem
com suas propriedades, que contém todas as informações sobre o sistema computacional, conforme mostrado a seguir.
Há um número limitado de propriedades exibidas na saída. O objeto Win32_computersystem
contém mais propriedades do que essas.
Podemos usar o cmdlet Format-List
para exibir todas as propriedades de um objeto recuperado.
Use o Cmdlet Format-List
para Exibir Propriedades
O Format-List
pode ser encadeado com a saída de outro comando para formatar os resultados. Este cmdlet pode exibir as propriedades especificadas ou todas as propriedades de um objeto WMI recuperado em um formato legível.
Sintaxe:
Get-WmiObject -Class Win32_computersystem | Format-List -Property Name, Model, Manufacturer
Vamos especificar algumas propriedades para a instância Win32_computersystem
.
Format-List [-Property <PropertyName[]>]
: Formata a saída como uma lista.-Property <PropertyName[]>
: (Opcional) Especifica as propriedades a serem exibidas. Se omitido, todas as propriedades são mostradas.
Saída:
O Get-WmiObject
retorna as propriedades padrão para o objeto Win32_computersystem
. Em seguida, a saída será passada através do operador de pipeline (|
) para o comando Format-List
.
Podemos passar o parâmetro -Property
para o cmdlet Format-List
. Isso filtrará a saída final com as três propriedades fornecidas.
Às vezes, é importante verificar todas as propriedades e valores disponíveis para um objeto WMI específico. Nesse caso, você precisa usar -Property *
para recuperar todas as propriedades disponíveis e seus valores.
O *
indica todas as propriedades.
Get-WmiObject -Class Win32_computersystem | Format-List -Property *
Saída:
A saída contém todas as propriedades e os valores disponíveis para o objeto Win32_computersystem
. Podemos omitir o parâmetro -Property
no comando acima e escrevê-lo.
Get-WmiObject -Class Win32_computersystem | Format-List *
O comando acima deve exibir a mesma saída que acima.
Conclusão
Nesta exploração do Get-WmiObject
do PowerShell, descobrimos seu papel fundamental no gerenciamento de sistemas Windows. O parâmetro -List
capacita os usuários a enumerar todas as classes WMI, auxiliando na identificação de fontes de dados relevantes.
Concentrando-se em -Class
, demonstramos sua precisão na recuperação de informações detalhadas do sistema, exemplificado com Win32_ComputerSystem
. A adição de Format-List
aprimora a legibilidade da saída, o que é crucial ao lidar com listas extensas de propriedades.
Para aprofundar seu conhecimento, mergulhe em várias classes WMI como Win32_Processor
ou Win32_OperatingSystem
. Incorporar Get-WmiObject
em scripts pode agilizar as tarefas de gerenciamento do sistema.
Como uma ferramenta versátil, o Get-WmiObject
atende tanto iniciantes quanto usuários experientes, epitomizando sua importância no PowerShell para diversas tarefas de TI e automação.
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.