Comment afficher toutes les propriétés d'un objet PowerShell
-
Utilisez
Get-WmiObject
pour afficher toutes les propriétés d’un objet PowerShell - Récupérer les informations de l’instance/classe d’objet
-
Utilisez le cmdlet
Format-List
pour afficher les propriétés - Conclusion

Il existe des exigences pour trouver des informations sur la machine Windows et ses composants, tels que le réseau, les applications et les services. Le Modèle d’Information Commun (CIM) est une norme open-source pour manipuler ces composants et leurs informations.
Microsoft a implémenté sa norme au-dessus de CIM appelée Windows Management Instrumentation (WMI) pour interroger et manipuler les informations sur les ordinateurs, les services et les réseaux.
Utilisez Get-WmiObject
pour afficher toutes les propriétés d’un objet PowerShell
Le cmdlet Get-WmiObject
est un outil puissant, en particulier pour les tâches d’administration et de gestion système. Il permet d’accéder aux données de Windows Management Instrumentation (WMI), qui comprennent une richesse d’informations sur le système, telles que des détails sur le matériel, les logiciels installés, la configuration réseau, et plus encore.
L’une des capacités méconnues mais puissantes de Get-WmiObject
est l’utilisation du paramètre -List
. Cette option permet aux utilisateurs de récupérer une liste de toutes les classes WMI au sein d’un espace de noms spécifié.
La syntaxe de base de Get-WmiObject -List
est :
Get-WmiObject -List [-Namespace <String>] [-ComputerName <String>]
Les paramètres clés incluent :
-Namespace <String>
: Spécifie l’espace de noms du dépôt WMI. La valeur par défaut estroot\cimv2
, qui contient la plupart des classes WMI couramment utilisées.-ComputerName <String>
: Cible un ordinateur distant. Sans ce paramètre, le cmdlet fonctionne sur la machine locale.
Ainsi, le processus de gestion du système Windows devient beaucoup plus facile. Vérifions les classes disponibles en utilisant le cmdlet Get-WmiObject
.
Get-WmiObject -List
Cette commande affichera toutes les classes disponibles dans l’espace de noms par défaut de votre machine locale. L’espace de noms par défaut est ROOT\cimv2
sur l’ordinateur Windows.
Sortie :
Il est possible de spécifier un espace de noms différent de celui par défaut (ROOT\cimv2
). Nous pouvons utiliser le paramètre -Namespace
pour changer l’espace de noms par défaut.
Get-WmiObject -Namespace <custom_namespace>
Récupérer les informations de l’instance/classe d’objet
L’utilisation de Get-WmiObject -Class
est principalement destinée à récupérer des informations détaillées sur un aspect particulier du système. Par exemple, interroger la classe Win32_Processor
fournit des informations sur le processeur, tandis que Win32_OperatingSystem
révèle des détails sur le système d’exploitation.
Le paramètre -Class
de ce cmdlet permet aux utilisateurs d’interroger des classes spécifiques au sein du dépôt WMI, qui sont essentiellement des modèles pour les objets représentant des informations système. Ces classes couvrent une large gamme de données, des détails matériels aux paramètres de configuration.
Syntaxe :
Get-WmiObject -Class <String> [-Namespace <String>] [-ComputerName <String>]
Les paramètres clés incluent :
-Class <String>
: Spécifie la classe WMI pour laquelle des informations sont requises.-Namespace <String>
: Optionnel. Spécifie l’espace de noms du dépôt WMI (la valeur par défaut estroot\cimv2
).-ComputerName <String>
: Optionnel. Dirige la commande vers un ordinateur distant.
Il existe des centaines de classes WMI disponibles à utiliser. Nous pouvons récupérer les informations pour une classe donnée, comme indiqué ci-dessous.
Get-WmiObject -Class Win32_computersystem
Ici, nous récupérons des informations pour la classe Win32_computersystem
. Elle retourne l’objet Win32_computersystem
avec ses propriétés, qui contient toutes les informations sur le système informatique, comme le montre ce qui suit.
Il y a un nombre limité de propriétés affichées dans la sortie. L’objet Win32_computersystem
contient plus de propriétés que celles-ci.
Nous pouvons utiliser le cmdlet Format-List
pour afficher toutes les propriétés d’un objet récupéré.
Utilisez le cmdlet Format-List
pour afficher les propriétés
Le Format-List
peut être pipé avec la sortie d’une autre commande pour formater les résultats. Ce cmdlet peut afficher les propriétés spécifiées ou toutes les propriétés d’un objet WMI récupéré dans un format lisible.
Syntaxe :
Get-WmiObject -Class Win32_computersystem | Format-List -Property Name, Model, Manufacturer
Spécifions quelques propriétés pour l’instance Win32_computersystem
.
Format-List [-Property <PropertyName[]>]
: Formate la sortie en liste.-Property <PropertyName[]>
: (Optionnel) Spécifie les propriétés à afficher. Si omis, toutes les propriétés sont affichées.
Sortie :
Le Get-WmiObject
retourne les propriétés par défaut pour l’objet Win32_computersystem
. Ensuite, la sortie sera transmise par l’opérateur de pipeline (|
) à la commande Format-List
.
Nous pouvons passer le paramètre -Property
au cmdlet Format-List
. Cela filtrera la sortie finale avec les trois propriétés données.
Parfois, il est important de vérifier toutes les propriétés et valeurs disponibles pour un objet WMI spécifié. Dans ce cas, vous devez utiliser -Property *
pour récupérer toutes les propriétés disponibles et leurs valeurs.
Le *
indique toutes les propriétés.
Get-WmiObject -Class Win32_computersystem | Format-List -Property *
Sortie :
La sortie contient toutes les propriétés et les valeurs disponibles pour l’objet Win32_computersystem
. Nous pouvons omettre le paramètre -Property
dans la commande ci-dessus et l’écrire.
Get-WmiObject -Class Win32_computersystem | Format-List *
La commande ci-dessus devrait afficher la même sortie que ci-dessus.
Conclusion
Dans cette exploration de Get-WmiObject
de PowerShell, nous avons découvert son rôle pivotal dans la gestion des systèmes Windows. Le paramètre -List
permet aux utilisateurs d’énumérer toutes les classes WMI, facilitant l’identification des sources de données pertinentes.
En nous concentrant sur -Class
, nous avons démontré sa précision dans la récupération d’informations système détaillées, illustrées avec Win32_ComputerSystem
. L’ajout de Format-List
améliore la lisibilité de la sortie, ce qui est crucial lorsque l’on traite de longues listes de propriétés.
Pour approfondir vos connaissances, plongez dans diverses classes WMI comme Win32_Processor
ou Win32_OperatingSystem
. L’incorporation de Get-WmiObject
dans des scripts peut rationaliser les tâches de gestion des systèmes.
En tant qu’outil polyvalent, Get-WmiObject
s’adresse aussi bien aux débutants qu’aux utilisateurs chevronnés, illustrant son importance dans PowerShell pour des tâches et des automatisations informatiques variées.
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.