Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Da Objekte eine solche zentrale Rolle in PowerShell spielen, gibt es mehrere systemeigene Befehle, die für die Arbeit mit beliebigen Objekttypen entwickelt wurden. Der wichtigste ist der Get-Member Befehl.
Die einfachste Methode zum Analysieren der Objekte, die ein Befehl zurückgibt, besteht darin, die Ausgabe dieses Befehls an das Get-Member Cmdlet weiterzuleiten. Das Get-Member-Cmdlet zeigt Ihnen den offiziellen Namen des Objekttyps und eine vollständige Auflistung seiner Elemente an. Die Anzahl der zurückgegebenen Elemente kann manchmal überwältigend sein. Ein Prozessobjekt kann z. B. über 100 Elemente haben.
Mit dem folgenden Befehl können Sie alle Elemente eines Process-Objekts und einer Seite über die Ausgabe anzeigen.
Get-Process | Get-Member | Out-Host -Paging
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Handles AliasProperty Handles = Handlecount
Name AliasProperty Name = ProcessName
NPM AliasProperty NPM = NonpagedSystemMemorySize
PM AliasProperty PM = PagedMemorySize
VM AliasProperty VM = VirtualMemorySize
WS AliasProperty WS = WorkingSet
add_Disposed Method System.Void add_Disposed(Event...
...
Wir können diese lange Liste von Informationen besser nutzbar machen, indem wir nach Elementen filtern, die wir sehen möchten. Mit dem Get-Member Befehl können Sie nur Elemente auflisten, die Eigenschaften sind. Es gibt mehrere Arten von Eigenschaften. Das Cmdlet zeigt Eigenschaften eines Typs mithilfe des MemberType-Parameters mit dem Wert Propertiesan. Die resultierende Liste ist immer noch sehr lang, aber deutlich überschaubarer:
Get-Process | Get-Member -MemberType Properties
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Handles AliasProperty Handles = Handlecount
Name AliasProperty Name = ProcessName
...
ExitCode Property System.Int32 ExitCode {get;}
...
Handle Property System.IntPtr Handle {get;}
...
CPU ScriptProperty System.Object CPU {get=$this.Total...
...
Path ScriptProperty System.Object Path {get=$this.Main...
...
Note
Die zulässigen Werte von MemberType sind AliasProperty, CodeProperty, Property, NoteProperty, ScriptProperty, Properties, PropertySet, Method, CodeMethod, ScriptMethod, Methods, ParameterizedProperty, MemberSet und All.
Es gibt mehr als 60 Eigenschaften für einen Prozess. PowerShell bestimmt standardmäßig, wie ein Objekttyp mithilfe von Informationen angezeigt wird, die in XML-Dateien gespeichert sind, deren Namen enden .format.ps1xml. Die Formatierungsdefinition für Prozessobjekte wird in DotNetTypes.format.ps1xmlgespeichert.
Wenn Sie andere Eigenschaften als die Eigenschaften anzeigen müssen, die PowerShell standardmäßig anzeigt, können Sie die Ausgabe mithilfe der Format-* Cmdlets formatieren.