Bei Skripten für die Automatisierung in Windows Server verwende ich oft PowerShell Arrays. Damit kann ich Aufgaben mit verschiedenen Parametern ausführen und alles in ein paar Zeilen Code zusammenfassen. Wie einfach das funktioniert, zeige ich Dir anhand der Installation von Windows Server Features mit der PowerShell.



PowerShell Array erstellen

Ein PowerShell Array speichert mehrere Werte in einer einzigen Variablen. Wenn Aufgaben mehrmals hintereinander ausgeführt werden sollen und sich jeweils nur ein Wert ändert, ist das besonders nützlich.

Für meine täglich Arbeit habe ich mir vor einiger Zeit ein PowerShell Skript für die Installation von Windows Server Rollen und Features geschrieben. Dort speichere ich die verschiedenen zu installierenden Rollen und Features in einer einzigen Variable. Diese brauche ich dann nur noch dem Befehl für die Installation übergeben und schon werden die benötigten Funktionen nacheinander installiert.

Ein PowerShell Array erstellst Du mit dem Zusatz „@“, gefolgt von den Werten:

$<Arrayname> = @(„Wert 1,“,“Wert 2″, …“Wert n“)

Der komplette Inhalt des Arrays kann durch die einfache Eingabe der Variablen abgerufen werden. Bestimmte Werte durch anhängen von eckigen Klammern mit dem Inhalt der Nummer, an deren Stelle der Wert steht. Wichtig: Der erste Wert trägt die Nummer „0“, nicht die „1“. Das folgende Beispiel verdeutlicht die Schreibweise und den Abruf der Werte aus dem PowerShell Array:

PowerShell Array erstellen

Erstellen einer PowerShell Arrays und abrufen der enthaltenen Werte.

Einsatzmöglichkeiten für Arrays

Wie eingangs erwähnt, nutze ich Arrays unter anderem zum Installieren von Funktionen in Windows Server. Hierfür habe ich mir das nachfolgende PowerShell Skript (nicht vollständig) geschrieben.

In diesem Skript kann ich ein Feature durch einfaches Entfernen des Zeichens # vor dessen Bezeichnung für die Installation aktivieren. Somit sammle ich alle Namen der Features in einem PowerShell Array. In der abschließenden ForEach-Schleife übergebe ich die gespeicherten Werte der Reihe nach dem Befehl „Install-WindowsFeature„. Dadurch spare ich viel Zeit bei der Installation und gleichzeitig schließe ich Flüchtigkeitsfehler aus.

Weitere denkbare Anwendungsfälle für Arrays sind beispielsweise das Abrufen und Hinzufügen von Parametern bei ausgewählten Objekten im Active Directory. Sie können in fast allen Operationen mit der Microsoft PowerShell äußerst nützlich sein.

PowerShell Array leeren / zurücksetzen

Bei Schleifen in einem PowerShell Skript kann es auch notwendig sein, die Werte eines Arrays wieder zu löschen, damit dieses neu gefüllt werden kann. Das erreichst Du ganz einfach mit dem Befehl $<arrayname> = @().

Ebenfalls interessant und lesenswert:

Es freut mich, wenn ich Dir mit diesem Artikel helfen konnte.
Wer möchte, kann diesem Blog eine kleine Aufmerksamkeit in Form einer kleinen Spende (PayPal) oder über die Amazon Wunschliste zukommen lassen.

René Albarus

Ich heiße René Albarus und bin seit 2002 beruflich im Bereich der Systemadministration tätig. Da auch ich einen Teil meines Wissens IT-Blogs im Internet verdanke, ist es für mich selbstverständlich, dass ich Lösungsansätze und Anleitungen in diesem Blog weitergebe.
René Albarus
0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.