Wie eine PowerShell-For-Schleife einen Befehl mehrmals ausführen kann

Die For-Schleife ist eines der wertvollsten Tools in jeder Programmiersprache(valuable tools in any programming language) , und  Microsoft PowerShell ist nicht anders. Sie können andere Schleifen verwenden, um Befehle zu wiederholen, aber die For-Schleife ist vielleicht die einfachste.

Von der Iteration über Arrays bis hin zur Ausführung einer Funktion mit einer vorgegebenen Anzahl von Malen gibt es viele Dinge, die Sie mit diesem Tool erreichen können. Hier ist ein Tutorial zur Verwendung von For-Schleifen in PowerShell .

Wozu dienen(PowerShell) For -Schleifen(Loops) in PowerShell(Use) ?

Im Gegensatz zur Eingabeaufforderung(Command Prompt) ist PowerShell eine vollständige Skriptumgebung. Das bedeutet, dass Sie wiederverwendbare PowerShell-Skripte(PowerShell scripts) schreiben können, um Aufgaben automatisch auszuführen, anstatt Befehle manuell einzugeben. Und For-Schleifen sind der Schlüssel zum Schreiben dieser Module.

Eine For-Anweisung wiederholt einen Skriptblock eine bestimmte Anzahl von Malen und ändert eine bestimmte Variable, um den Fortschritt zu verfolgen. Auf diese Weise können Sie die Schleife für einige ziemlich interessante Szenarien verwenden.

Sie können Zahlenfolgen generieren, eine Primzahl bestimmen oder einen Countdown-Timer anzeigen. Praktischer können Sie über ein Array von Objekten iterieren und mit jedem Eintrag eine Aktion ausführen.

Die Syntax einer For -Schleife(Loop) in PowerShell

For-Schleifen funktionieren in Windows PowerShell genauso wie in jeder Programmiersprache. Ausdrücke, die die Tracking-Variable initialisieren, ihren Wert testen und die Variable ändern, befinden sich in den Klammern nach „For“, die durch Semikolons getrennt sind. Dann kommt die Anweisungsliste selbst, die durch geschweifte Klammern gebunden ist.

Für ( Initialisierung(Initialization) ; Bedingung(Condition) ; Aktualisierung(Update) )

{

    Skriptblock(Script Block)

}

So verwenden Sie die For -Schleife(Loop) in einem PowerShell-Skript(PowerShell Script)

Die Verwendung der For-Schleife ist ziemlich einfach. Wann immer Sie auf eine Situation stoßen, die die Wiederholung eines leicht variierenden Schritts erfordert, sollten Sie ihn in eine For-Schleife einfügen.

Angenommen, Sie müssen ein Code-Snippet schreiben, das die Summe aller natürlichen Zahlen bis zu einer Zahl n finden kann, die in der Variablen $n enthalten ist. Hier ist ein einfaches Beispiel für eine For-Schleife:

$n = 10

$summe = 0

Für ($i = 1 ; $i -le $n ; $i++)

{

    $summe = $summe + $i

}

„Die Summe von $n natürlichen Zahlen ist $sum“

Zugriff auf Arrays über eine For-Schleife

Das Generieren von Zahlenfolgen ist kaum das, wofür die meisten Leute PowerShell verwenden . Eine häufigere Verwendung ist die Iteration über ein Array.

Angenommen(Say) , Sie haben ein Array $week mit sieben Elementen. Die Liste der im Array enthaltenen Tage können Sie wie im folgenden Beispiel mit einer einfachen For-Schleife ausgeben.

For ($i = 0 ; $i -lt $week.Length ; $i++)

{

    $woche[$i]

}

Verwenden der ForEach-Schleife(ForEach Loop) zum schnellen Durchlaufen(Quickly Iterate) eines Arrays

Eine andere Form der For-Schleife ist die ForEach- Anweisung. Diese Version vereinfacht das Durchsuchen der Inhalte eines PowerShell -Arrays und deren individuelle Verarbeitung. Das vorherige Code-Snippet kann beispielsweise wie folgt umgeschrieben werden:

Foreach ($Tag in $Woche)

{

    $Tag

}

Beim Umgang mit komplexeren Objekten können Sie auch das Foreach-Object-Cmdlet verwenden, um eine Aktion für den Inhalt eines beliebigen PowerShell - Befehls auszuführen.

Wie unterscheidet sich die For-Schleife(Loop Different) von anderen Arten(Types) von Schleifen(Loops) ?

Die For-Schleife ist nicht die einzige Schleifenanweisung, die Ihnen zur Verfügung steht. Wie die meisten Programmiersprachen hat PowerShell mehrere Arten von Schleifen.

Während

Die einfachste davon ist die While-Schleife. Alles, was Sie haben, ist eine Bedingung und ein Skriptblock, und die Schleife wird so lange ausgeführt, wie der Testausdruck als wahr ausgewertet wird. Da der Ausdruck zuerst ausgewertet wird, besteht die Möglichkeit, dass der Code überhaupt nicht ausgeführt wird oder als Endlosschleife endet. 

Während ( Bedingung(Condition) )

{

    Skriptblock(Script Block)

}

Do-Während

Wenn Sie ein Skript schreiben, das mindestens einmal ausgeführt werden muss – auch wenn der Ausdruck als falsch ausgewertet wird –, können Sie die Do-While- Schleife verwenden. Der einzige Unterschied zur While-Schleife besteht darin, dass der Befehlsblock vor der Bedingung platziert wird, was bedeutet, dass der Code ausgeführt wird, bevor der Testausdruck zum ersten Mal überprüft wird.

Tun {

    Skriptblock(Script block)

}

Während ( Bedingung(Condition) )

Machen bis

Eine andere Version dieser Schleife ist Do-Until . Im Grunde(Basically) führt es den Codeblock aus und wiederholt ihn dann, bis der Testausdruck wahr ist – die Umkehrung einer Do-While- Schleife. Keine besonders nützliche Struktur, da Sie dasselbe erreichen können, indem Sie die Bedingung in einer Standard -Do-While- Schleife ändern.

Tun {

    Skriptblock(Script Block)

}

Bis ( Zustand(Condition) )

Warum die For-Schleife besser ist

Das Problem mit all diesen anderen Schleifenstrukturen besteht darin, dass sie keine Anfangswert- oder Update-Anweisungen enthalten. Sie müssen manuell daran denken, eine Variable außerhalb der Schleife zu erstellen und sie dann bei jedem Durchlauf der Schleife zu inkrementieren (oder zu dekrementieren).

Wie zu erwarten, vergessen Programmierer diesen Schritt oft, was zu einem Skript führt, das nicht wie beabsichtigt funktioniert. Dadurch wird wertvolle Zeit beim Debuggen verschwendet.

Die For-Schleife vermeidet dieses Problem, indem sie die Initialisierungs- und Inkrement-Ausdrücke innerhalb der beginnenden Klammern erfordert. Dies führt zu saubereren, robusteren Skripten.

Wann sollten Sie die For -Schleife(Loop) in PowerShell verwenden ?

Bei PowerShell dreht(PowerShell) sich alles um das Erstellen von Skripts für die Automatisierung. Und wahrscheinlich das nützlichste Werkzeug, um dies zu erreichen, ist die For-Schleife. Sie können damit viele Copy-Paste-Vorgänge durch ein kompakteres, eleganteres Skript ersetzen.

Die häufigste Funktion dieser Schleife besteht darin, über ein Array zu iterieren, einen Eintrag nach dem anderen. Für ein noch schlankeres Skript können Sie auch eine ForEach- Schleife verwenden. Sie können auch die For-Schleife verwenden, um Zahlenfolgen zu generieren, obwohl dies selten erforderlich ist.

Die For-Schleife punktet gegenüber anderen Schleifenalgorithmen, indem sie alle wesentlichen Funktionen einer Schleife in die Parameter aufnimmt und Fehler durch Vergessen dieser Anweisungen verhindert. Dies macht die For-Schleife in jedem Szenario unverzichtbar, in dem eine Reihe von Befehlen wiederholt werden soll.



About the author

Ich bin ein Windows 10-Techniker und helfe seit vielen Jahren Einzelpersonen und Unternehmen dabei, die Vorteile des neuen Betriebssystems zu nutzen. Ich habe umfangreiche Kenntnisse über Microsoft Office, einschließlich der Anpassung des Erscheinungsbilds und der Personalisierung von Anwendungen für verschiedene Benutzer. Außerdem weiß ich, wie ich mit der Explorer-App Dateien und Ordner auf meinem Computer durchsuchen und finden kann.



Related posts