PowerShell -Arrays, wie sie sie erstellen und verwenden können

PowerShell -Arrays, wie sie sie erstellen und verwenden können

Variablen sind die grundlegendste Datenstruktur in jeder Art von Codierung. Einzelne Variablen reichen jedoch für die meisten Zwecke kaum aus, insbesondere wenn es um komplexere Algorithmen geht.

Hier kommen Arrays ins Spiel. Ob C ++ oder Python, Arrays sind in jeder Programmiersprache in irgendeiner Form vorhanden. Aber was ist mit Windows PowerShell?? Wie funktionieren PowerShell -Arrays?? Wie benutzt man sie?? Was ist ihre Syntax?? Lass es uns herausfinden.

Inhaltsverzeichnis

    PowerShell Arrays 101

    Einfach spricht ein Array nur eine strukturierte Sammlung von Variablen. Die Idee besteht.

    In PowerShell können Sie eine Variable erstellen, indem Sie das $ -Symbol für einen variablen Namen vorbereiten. Zum Beispiel:

    $ prime = 13

    Die Variable kann alle Datentypen enthalten, von Zahlen bis hin zu Zeichenfolgen. Sie müssen nur doppelte oder einzelne Zitate verwenden, um eine Zeichenfolge anzugeben.

    $ name = "Levin"

    Um nun ein neues Array zu erstellen, weisen Sie einfach die gleiche Variable mehrere Werte zu, die durch Kommas getrennt sind. So was:

    $ week = "montag", "toiday", "wednesday", "Donnerstag", "Friday", "Samstag", "Sonntag"

    Einige Leute ziehen es vor, eine Variable explizit in ein Array zu werfen, um Verwirrung zu vermeiden, obwohl dies nicht notwendig ist. Geben Sie dazu die Werte in Klammern ein, die dem @ -Symbol vorangestellt sind.

    $ week = @("Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sunday")

    Dies ist in der Regel praktisch, wenn Sie versuchen, die Ausgabe anderer Befehle in ein Array zu setzen, in dem Sie sie nicht manuell im richtigen Format schreiben können.

    Erstellen eines Arrays

    Wir haben bereits die häufigste Methode zum Erstellen eines Arrays gesehen. Abhängig von der Situation gibt es jedoch andere Möglichkeiten, die besser geeignet sind. Wenn Sie beispielsweise ein Array erstellen möchten, das eine Reihe von Zahlen enthält, können Sie den Bereichsoperator verwenden:

    $ Digits = (0… 9)

    Dies erzeugt ein Array aller zehn Ziffern von null bis neun. Sie können auch ein leeres Array initialisieren, falls Sie nur einen Ort finden möchten, an dem Sie Werte später speichern möchten.

    $ values ​​= @()

    Mehrere Arrays können sogar ineinander verschachtelt werden, obwohl diese Art von Nutzung sehr schnell verwirrt werden kann.

    $ koordinaten = @((
        (5, 10, 23),
        (11, 7, 16)
    )

    Standardmäßig kann ein Array einen variablen Typ speichern, sei es Zahlen, Zeichenfolgen oder eine Mischung aus beiden. Sie können jedoch einen Typ explizit definieren, falls Sie die darin eingestellten Werte einschränken möchten. Zum Beispiel:

    [int []] $ number = 2,3,4,5

    Auf diese Weise kann das Array nur Ganzzahlen halten. Der Versuch, ihm einen anderen Werttyp zuzuweisen, gibt einen Fehler zurück. Dies kann nützlich sein, um einfache Fehler für Arrays zu verhindern, die ausschließlich mit numerischen Werten arbeiten, da die Eingabe einer Zeichenfolge in eine Variable, die in Berechnungen verwendet werden soll.

    Zugriff auf Arrays

    Bisher haben wir mehrere Methoden zum Erstellen von Arrays gesehen, die verschiedene Arten von Daten enthalten. Aber wie können Sie auf diese Daten zugreifen??

    PowerShell -Arrays verwenden das gleiche Format, das von anderen Programmiersprachen verwendet wird. Auf jede Array -Variable kann durch ihre Indexnummer zugegriffen werden. Zum Beispiel:

    $ var = $ number [5]

    Dadurch kopiert der im Index fünf gespeicherte Wert der $ Zahlen Array in der $ var Variable. Beachten Sie, dass Array -Indizes von 0 abzählen, sodass auf das erste Element mit Null zugegriffen wird.

    Wenn wir dies zum Beispiel ausgeben:

    "$ Days [2]"

    Wir werden Mittwoch bekommen, nicht am Dienstag.

    Sie können dieselbe Methode auch verwenden, um diese Werte zu ändern. Beispielsweise ändert der folgende Befehl das zweite Element des Arrays auf Null:

    $ number [1] = 0

    Sie können einem vorhandenen Array auch mehr Elemente hinzufügen, anstatt die Werte der Stromeinträge zu ändern, indem Sie sie nur wie einen arithmetischen Ausdruck hinzufügen.

    $ namen += "johny"

    Diese Methode kann verwendet werden, um auch mehrere Einträge gleichzeitig oder sogar ganze Arrays hinzuzufügen.

    $ names += "Charlie, Liam, Teresa"

    $ namen += $ surnamen

    Die von Kommas getrennte Methode gilt auch für den Zugriff auf mehrere Array-Elemente. Das Eingeben beispielsweise speichert die ersten fünf Elemente von $ Tage In $ wochentags.

    $ wochentage = $ tays [0,1,2,3,4]

    Iterieren durch Arrays

    Der manuelle Zugriff auf bestimmte Elemente eines Arrays ist gut und gut, aber wenn Sie Aktionen auf dem gesamten Inhalt eines Arrays ausführen möchten, kann es mühsam werden. Ein eleganterer Ansatz ist die Verwendung von A for Loop.

    Für Schleifen kann systematisch alle Elemente eines Arrays durchgehen und jeden Wert gemäß den Anweisungen verarbeiten. So können Sie eine solche Schleife konstruieren:

    Für ($ i = 0; $ i -lt $ tage.Länge ; $ i ++)

        $ days [$ i]

    Das Array.Die Längefunktion gibt die Größe des Arrays zurück, was im Grunde die Anzahl der Elemente darin besteht. Dies kann an einen für den Testerxpressionsparameter von Loop angeschlossen werden, um alle Elemente umfassend zu iterieren.

    Die Foreach-Schleife und die Foreach-Objekt-Schleife können dasselbe mit einem noch schlankeren PowerShell-Skript tun.

    Foreach ($ tag in $ tay)

        $ tag

    Dies erspart Ihnen die Anstrengung, die Größe des Arrays zu bestimmen, und lassen Sie die Details für PowerShell zu verarbeiten.

    Wann sollten Sie PowerShell -Arrays verwenden?

    Die größte Fehlerquelle in einem komplexen Skript sind fälschlicherweise referenzierte Variablen. Dies geschieht aufgrund des Vorhandenseins einer großen Anzahl einzigartig benannter Variablen, was es schwierig macht, sich an ihren Zweck zu erinnern.

    Die einfachste Lösung für dieses Problem besteht darin, Arrays ausführlich zu verwenden. Alle in gewisser Weise verwandten Variablen können einem einzelnen Array zugeordnet werden und über ihre Indexnummern zugegriffen werden.

    Der erstklassige Anwendungsfall von Microsoft Powershell ist die Automatisierung, und Arrays spielen eine entscheidende Rolle dabei. Die von PowerShell CMDlets zurückgegebenen Objekte können in Arrays gespeichert und überarbeitet werden. Auf diese Weise können sequentielle Aufgaben automatisch ausgeführt werden, wodurch die Systemverwaltung stark vereinfacht wird.