Comment afficher toutes les propriétés d'un objet PowerShell

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

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 est root\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 :

Get-WmiObject

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 est root\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.

Get-WmiObject -Class

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 :

Format-List

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 :

Format-List -Property

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.

Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous
Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

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.

Article connexe - PowerShell Object