Mit dem Cmdlet Select-Object können Sie neue benutzerdefinierte Windows PowerShell-Objekte erstellen, die ausgewählte Eigenschaften aus den Objekten enthalten, mit denen sie erstellt wurden. Geben Sie den folgenden Befehl ein, um ein neues Objekt zu erstellen, das lediglich die Name-Eigenschaft und die FreeSpace-Eigenschaft der Win32_LogicalDisk-WMI-Klasse enthält:

PS> Get-WmiObject -Class Win32_LogicalDisk | Select-Object -Property Name,FreeSpace

Name                                    FreeSpace
----                                    ---------
C:                                      50664845312

Der Datentyp wird nach der Ausgabe des Befehls nicht angezeigt, wenn Sie das Ergebnis jedoch nach Select-Object über die Pipeline an Get-Member übergeben, wird der neue Objekttyp "PSCustomObject" angezeigt:

PS> Get-WmiObject -Class Win32_LogicalDisk | Select-Object -Property Name,FreeSpace| Get-Member


   TypeName: System.Management.Automation.PSCustomObject

Name        MemberType   Definition
----        ----------   ----------
Equals      Method       System.Boolean Equals(Object obj)
GetHashCode Method       System.Int32 GetHashCode()
GetType     Method       System.Type GetType()
ToString    Method       System.String ToString()
FreeSpace   NoteProperty  FreeSpace=...
Name        NoteProperty System.String Name=C:

Select-Object kann sehr unterschiedlich verwendet werden. Beispielsweise können Sie Daten replizieren, um sie anschließend zu bearbeiten. Nun kann auch das Problem im Abschnitt zuvor gelöst werden. Der Wert von "FreeSpace" in den neu erstellten Objekten kann aktualisiert werden, sodass die beschreibende Bezeichnung in der Ausgabe enthalten ist.

Get-WmiObject -Class Win32_LogicalDisk | Select-Object -Property Name,FreeSpace | ForEach-Object -Process {$_.FreeSpace = ($_.FreeSpace)/1024.0/1024.0; $_}
Name                                                                  FreeSpace
----                                                                  ---------
C:                                                                48317.7265625




Inhaltsverzeichnis