Um die beiden Objekte $object1
und $object2
in einem gemeinsamen Objekt $objects
zu speichern, hängt es davon ab, ob man die Daten vertikal oder horizontal zusammenfügen möchte. (JOINING & CONCATENING)
Concatening / Union / vertikal
Um Objekte – vergleichbar mit einem Union zusammenzufügen, gibt es die Möglichkeit unter Verwendung des Operator ,:
Der Operator ,
erzeugt in diesem Fall ein Array, das beide Objekte enthält. Die Variable $objects
wird dann diesem Array zugewiesen, so dass sie beide Objekte enthält.
Joining / Join / Horizontal
Etwas komplizierter ist das Joining von Daten in Powershell.
In diesem Beispiel wird die JSON-Textzeichenfolge in der Variable $myJSON1
und $myJSON2
definiert. Die JSON-Textzeichenfolgen werden dann durch das ConvertFrom-Json
Cmdlet in PowerShell-Objekte $myObject1
und $myObject2
umgewandelt.
Die ForEach-Object
-Schleife wird dann verwendet, um jedes Objekt in $myObject1
zu durchlaufen. Innerhalb dieser Schleife wird das Where-Object
Cmdlet verwendet, um jedes Objekt in $myObject2
zu durchlaufen, das denselben Namen hat wie das aktuelle Objekt in $myObject1
.
Wenn ein passendes Objekt gefunden wurde, wird ein neues Objekt erstellt, das alle Eigenschaften aus beiden ursprünglichen Objekten enthält. Das neue Objekt wird der Ergebnisliste $result
hinzugefügt.
Die Ausgabe des Ergebnisses sieht folgendermaßen aus: