Wie man alle Eigenschaften eines PowerShell-Objekts anzeigt

  1. Verwenden von Get-WmiObject, um alle Eigenschaften eines PowerShell-Objekts anzuzeigen
  2. Abrufen der Klasseninstanz-/Objektinformationen
  3. Verwenden des Cmdlets Format-List, um Eigenschaften anzuzeigen
  4. Fazit
Wie man alle Eigenschaften eines PowerShell-Objekts anzeigt

Es gibt Anforderungen, um Informationen über die Windows-Maschine und ihre Komponenten, wie Netzwerk, Anwendungen und Dienste, zu finden. Das Common Information Model (CIM) ist ein Open-Source-Standard zur Manipulation dieser Komponenten und ihrer Informationen.

Microsoft hat seinen Standard auf CIM implementiert, der Windows Management Instrumentation (WMI) genannt wird, um Computer-, Dienst- und Netzwerkinformationen abzufragen und zu manipulieren.

Verwenden von Get-WmiObject, um alle Eigenschaften eines PowerShell-Objekts anzuzeigen

Das Cmdlet Get-WmiObject ist ein leistungsstarkes Werkzeug, insbesondere für Systemadministrations- und Managementaufgaben. Es ermöglicht den Zugriff auf Windows Management Instrumentation (WMI)-Daten, die eine Fülle von Informationen über das System enthalten, wie Details über Hardware, installierte Software, Netzwerkkonfiguration und mehr.

Eine der weniger bekannten, aber dennoch leistungsstarken Funktionen von Get-WmiObject ist die Verwendung des Parameters -List. Diese Option ermöglicht es Benutzern, eine Liste aller WMI-Klassen innerhalb eines bestimmten Namensraums abzurufen.

Die grundlegende Syntax von Get-WmiObject -List lautet:

Get-WmiObject -List [-Namespace <String>] [-ComputerName <String>]

Wichtige Parameter sind:

  • -Namespace <String>: Gibt den Namensraum des WMI-Repositorys an. Der Standard ist root\cimv2, der die meisten der häufig verwendeten WMI-Klassen enthält.
  • -ComputerName <String>: Zielt auf einen Remote-Computer. Ohne diesen Parameter funktioniert das Cmdlet auf der lokalen Maschine.

Daher wird der Windows-Systemverwaltungsprozess viel einfacher. Lassen Sie uns die verfügbaren Klassen mit dem Cmdlet Get-WmiObject überprüfen.

Get-WmiObject -List

Dieser Befehl gibt alle Klassen aus, die im Standardnamensraum Ihrer lokalen Maschine verfügbar sind. Der Standardnamensraum ist ROOT\cimv2 im Windows-Computer.

Ausgabe:

Get-WmiObject

Es ist möglich, einen anderen Namensraum als den Standardnamensraum (ROOT\cimv2) anzugeben. Wir können den Parameter -Namespace verwenden, um den Standardnamensraum zu ändern.

Get-WmiObject -Namespace <custom_namespace>

Abrufen der Klasseninstanz-/Objektinformationen

Die Verwendung von Get-WmiObject -Class dient in erster Linie dem Abrufen detaillierter Informationen über einen bestimmten Aspekt des Systems. Beispielsweise gibt die Abfrage der Klasse Win32_Processor Informationen über den Prozessor zurück, während Win32_OperatingSystem Details über das Betriebssystem offenbart.

Der Parameter -Class dieses Cmdlets ermöglicht es Benutzern, bestimmte Klassen innerhalb des WMI-Repositorys abzufragen, die im Wesentlichen Vorlagen für die Objekte sind, die Systeminformationen darstellen. Diese Klassen decken ein breites Spektrum an Daten ab, von Hardwaredetails bis hin zu Konfigurationseinstellungen.

Syntax:

Get-WmiObject -Class <String> [-Namespace <String>] [-ComputerName <String>]

Wichtige Parameter sind:

  • -Class <String>: Gibt die WMI-Klasse an, für die Informationen benötigt werden.
  • -Namespace <String>: Optional. Gibt den Namensraum des WMI-Repositorys an (Standard ist root\cimv2).
  • -ComputerName <String>: Optional. Leitet den Befehl an einen Remote-Computer weiter.

Es gibt Hunderte von WMI-Klassen, die verwendet werden können. Wir können die Informationen für eine bestimmte Klasse abrufen, wie im Folgenden gezeigt.

Get-WmiObject -Class Win32_computersystem

Hier rufen wir Informationen für die Klasse Win32_computersystem ab. Es gibt das Win32_computersystem-Objekt mit seinen Eigenschaften zurück, die alle Informationen über das Computer-system enthalten, wie im Folgenden gezeigt.

Get-WmiObject -Class

Es werden nur eine begrenzte Anzahl von Eigenschaften in der Ausgabe angezeigt. Das Win32_computersystem-Objekt enthält mehr Eigenschaften als diese.

Wir können das Cmdlet Format-List verwenden, um alle Eigenschaften eines abgerufenen Objekts anzuzeigen.

Verwenden des Cmdlets Format-List, um Eigenschaften anzuzeigen

Das Format-List-Cmdlet kann mit der Ausgabe eines anderen Befehls kombiniert werden, um die Ergebnisse zu formatieren. Dieses Cmdlet kann die angegebenen oder alle Eigenschaften eines abgerufenen WMI-Objekts in einem lesbaren Format anzeigen.

Syntax:

Get-WmiObject -Class Win32_computersystem | Format-List -Property Name, Model, Manufacturer

Lassen Sie uns einige Eigenschaften für die Instanz Win32_computersystem angeben.

  • Format-List [-Property <PropertyName[]>]: Formatiert die Ausgabe als Liste.
  • -Property <PropertyName[]>: (Optional) Gibt die anzuzeigenden Eigenschaften an. Wenn dieser Parameter weggelassen wird, werden alle Eigenschaften angezeigt.

Ausgabe:

Formatieren-Liste

Das Get-WmiObject gibt die Standard-eigenschaften für das Win32_computersystem-Objekt zurück. Dann wird die Ausgabe durch den Pipeline-Operator (|) an den Befehl Format-List weitergeleitet.

Wir können den Parameter -Property an das Cmdlet Format-List übergeben. Dadurch wird die finale Ausgabe mit den angegebenen drei Eigenschaften gefiltert.

Manchmal ist es wichtig, alle verfügbaren Eigenschaften und Werte für ein bestimmtes WMI-Objekt zu überprüfen. In diesem Fall müssen Sie -Property * verwenden, um alle verfügbaren Eigenschaften und deren Werte abzurufen.

Das * bezeichnet alle Eigenschaften.

Get-WmiObject -Class Win32_computersystem | Format-List -Property *

Ausgabe:

Format-List -Property

Die Ausgabe enthält alle Eigenschaften und die verfügbaren Werte für das Win32_computersystem-Objekt. Wir können den Parameter -Property im obigen Befehl weglassen und ihn so schreiben.

Get-WmiObject -Class Win32_computersystem | Format-List *

Der obige Befehl sollte die gleiche Ausgabe wie oben anzeigen.

Fazit

In dieser Erkundung von PowerShells Get-WmiObject haben wir seine zentrale Rolle im Windows-Management beleuchtet. Der Parameter -List ermöglicht es Benutzern, alle WMI-Klassen aufzulisten, was die Identifizierung relevanter Datenquellen unterstützt.

Mit dem Fokus auf -Class haben wir seine Präzision beim Abrufen detaillierter Systeminformationen demonstriert, veranschaulicht durch Win32_ComputerSystem. Die Ergänzung von Format-List verbessert die Lesbarkeit der Ausgabe, was entscheidend ist, wenn man es mit umfangreichen Eigenschaftslisten zu tun hat.

Um Ihr Wissen zu vertiefen, tauchen Sie in verschiedene WMI-Klassen wie Win32_Processor oder Win32_OperatingSystem ein. Die Integration von Get-WmiObject in Skripte kann Systemverwaltungsaufgaben optimieren.

Als vielseitiges Werkzeug spricht Get-WmiObject sowohl Anfänger als auch erfahrene Benutzer an und verkörpert seine Bedeutung in PowerShell für verschiedene IT-Aufgaben und Automatisierung.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
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.

Verwandter Artikel - PowerShell Object