Auswählen der Werte einer Eigenschaft in allen Objekten eines Arrays in PowerShell
-
Verwenden Sie
%{$_.Property}
, um die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen -
Verwenden von
Select-Object
zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell -
Verwenden von
$array.Property
zum Auswählen der Werte einer Eigenschaft auf allen Objekten eines Arrays in PowerShell -
Verwenden der Anweisung
foreach
zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell
Arrays sind die Sammlung von Werten oder Objekten. Die meisten Programmiersprachen haben Arrays als grundlegendes Merkmal. Ein Array ist einfach eine Datenstruktur, die eine Gruppe mehrerer Elemente enthält. Ein Element kann eine ganze Zahl, ein String, ein Objekt oder ein Array selbst sein. Ein einzelnes Array kann eine beliebige Kombination dieser Elemente enthalten. Jeder Artikel wird in einem Index gespeichert, immer beginnend bei 0
. Das erste Element eines Arrays wird im Index 0
gespeichert, das zweite Element in 1
, das dritte Element in 2
und so weiter.
Sie können ein Array in PowerShell mit @()
erstellen.
$data = @()
Der obige Befehl erstellt ein leeres Array, da wir keine Werte angegeben haben.
Hier ist ein Beispiel für die Erstellung eines Arrays $data
, das Objekte in der Eigenschaft Name und Alter enthält.
$data = @(
[pscustomobject]@{Name='James';Age='21'}
[pscustomobject]@{Name='David';Age='30'}
)
Wir haben den Eigenschaften Name
und Age
unterschiedliche Werte zugewiesen. In diesem Tutorial lernen Sie, die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen.
Verwenden Sie %{$_.Property}
, um die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen
Dies ist eine der einfachen Methoden, um die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen.
$select = @($data | %{$_.Name})
$select
Ausgabe:
James
David
Oder Sie können nur %Name
wie folgt verwenden:
$data | % Name
Ausgabe:
James
David
Verwenden von Select-Object
zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell
Das Cmdlet Select-Object
wählt bestimmte Eigenschaften eines Objekts oder einer Gruppe von Objekten aus. Es hilft bei der Auswahl eindeutiger Objekte, einer bestimmten Anzahl von Objekten oder Objekten an einer bestimmten Position in einem Array. So können Sie mit Select-Object
die Werte einer Eigenschaft auf allen Objekten eines Arrays in PowerShell auswählen.
$data | Select-Object -ExpandProperty Name
Ausgabe:
James
David
Verwenden von $array.Property
zum Auswählen der Werte einer Eigenschaft auf allen Objekten eines Arrays in PowerShell
Dies ist die einfachste Methode, um die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen.
$data.Age
Ausgabe:
21
30
Verwenden der Anweisung foreach
zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell
Die ForEach
-Anweisung wird auch als foreach
-Schleife bezeichnet. Es wird verwendet, um alle Elemente in einer Sammlung von Elementen zu durchlaufen. Es ist ein Sprachbefehl, der zum Durchlaufen einer Reihe von Werten in einem Array oder einer Sammlung von Objekten verwendet wird. Sie können einen oder mehrere Befehle für jedes Element in einem Array innerhalb einer ForEach
-Schleife ausführen.
$data.foreach('Age')
Ausgabe:
21
30
Oder Sie können den Befehl so ausführen.
$data.foreach({ $_.Age })
Ausgabe:
21
30
Alternativ können Sie auch den untenstehenden foreach
-Befehl verwenden, um die Werte einer Eigenschaft auf allen Objekten eines Arrays in PowerShell auszuwählen.
foreach($object in $data) { $object.Age}
Ausgabe:
21
30