Auswählen der Werte einer Eigenschaft in allen Objekten eines Arrays in PowerShell

Rohan Timalsina 30 Januar 2023
  1. Verwenden Sie %{$_.Property}, um die Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell auszuwählen
  2. Verwenden von Select-Object zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell
  3. Verwenden von $array.Property zum Auswählen der Werte einer Eigenschaft auf allen Objekten eines Arrays in PowerShell
  4. Verwenden der Anweisung foreach zum Auswählen der Werte einer Eigenschaft für alle Objekte eines Arrays in PowerShell
Auswählen der Werte einer Eigenschaft in allen Objekten 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
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Verwandter Artikel - PowerShell Array