So verwenden Sie Bash für Schleife unter Linux
- 2718
- 145
- Marleen Weight
In Programmiersprachen, Schleifen sind wesentliche Komponenten und werden verwendet, wenn Sie den Code immer wieder wiederholen möchten, bis ein bestimmter Zustand erfüllt ist.
In Verprügeln Scripting, Schleifen Spielen Sie die gleiche Rolle und werden verwendet, um sich wiederholte Aufgaben wie in Programmiersprachen zu automatisieren.
In Verprügeln Scripting gibt es 3 Arten von Schleifen: Für Schleife, while-Schleife, Und bis zur Schleife. Die drei werden verwendet, um eine Liste von Werten zu iterieren und einen bestimmten Befehlssatz auszuführen.
In diesem Leitfaden werden wir uns auf die konzentrieren Für Schleifen verprügeln unter Linux.
Für die Schleifensyntax verprügeln
Wie bereits erwähnt, die Für Schleife Iteriert über einen Wertebereich und führt eine Reihe von Befehlen aus.
Für Schleife Nimmt die folgende Syntax:
Für variable_name in Value1 Value2 Value3… n Do command1 command2 Befehl erledigt
Lassen Sie uns nun einige Beispielanwendungen der Bash für die Schleife überprüfen.
Schleifen Sie einfach für Schleife ab
In seiner einfachsten Form die Für Schleife Nimmt das folgende Grundformat an. In diesem Beispiel die Variable N
Iteriert über eine Gruppe von numerischen Werten,.
für n in 1 2 3 4 5 6 7; wiederholt $ n fertigBash für Loop -Beispiel
Bash für Schleife mit Reichweiten
In den vorherigen Beispielen haben wir die zu iterierten Werte ausdrücklich von der aufgeführt Für Schleife, Was gut funktioniert. Sie können sich jedoch nur vorstellen. Dies würde Sie dazu zwingen, alle Werte von 1 auf 100 zu tippen.
Um dieses Problem anzugehen, geben Sie einen Bereich an. Geben Sie dazu die Nummer an, um zu starten und zu stoppen, die durch zwei Perioden getrennt sind.
In diesem Beispiel ist 1 der erste Wert, während 7 der letzte Wert im Bereich ist.
#!/bin/bash für n in 1… 7; wiederholt $ n fertig
Sobald das Shell -Skript ausgeführt wurde, werden alle Werte im Bereich aufgeführt, ähnlich wie wir in einfache Schleifen.
Bash für Schleife mit Ranges -BeispielDarüber hinaus können wir am Ende des Bereichs einen Wert einfügen, der das verursachen wird Für Schleife durch die Werte in inkrementellen Schritten zu durchführen.
Das folgende BASH -Skript druckt die Werte zwischen 1 und 7 mit 2 inkrementellen Schritten zwischen den Werten, die vom ersten Wert beginnen.
#!/bin/bash für n in 1… 7… 2; wiederholt $ n fertigBash für Schleifenkrementwerte
Aus dem obigen Beispiel können Sie sehen, dass die Schleife Inkrementierte die Werte innerhalb der lockigen Klammern um 2 Werte.
Bash für Loops mit Arrays
Sie können auch leicht durch Werte iterieren, die in einem Array mit a definiert wurden Für Schleife. Im folgenden Beispiel die Für Schleife Iteriert alle Werte innerhalb der Früchte Array und druckt sie zu stdout.
#!/bin/bash fruits = ("Blueberry" "Pfirsich" "Mango" "Ananas" "Papaya") für n in $ fruits [@]; wiederholt $ n fertigBash für Loop Array Beispiel
Der @
Der Bedienerzugriff auf alle Elemente zugreifen oder abzielt. Dies ermöglicht es, alle Elemente nacheinander zu iterieren.
Zusätzlich können Sie auf ein einzelnes Element zugreifen, indem Sie seine Position innerhalb des Arrays angeben.
Zum Beispiel, um auf die zuzugreifen “Mango”Element, ersetzen Sie die @
Operator mit der Position des Elements im Array (das erste Element beginnt bei 0, also in diesem Fall ““Mango”Wird mit 2 bezeichnet).
So sieht die für Schleife aus.
#!/bin/bash fruits = ("Blueberry" "Pfirsich" "Mango" "Ananas" "Papaya") für n in $ fruits [2]; wiederholt $ n fertigBash für Schleifen mit Array -Elementen
Bash C-Stil für Schleifen
Sie können Variablen in Schleifen verwenden, um über eine Reihe von Elementen zu iterieren. Das ist wo C-Stil für Schleifen Komm herein. Das folgende Beispiel zeigt a C-Stil für Schleife das druckt eine Liste numerischer Werte von 1 bis 7 aus.
#!/bin/bash n = 7 für ((n = 1; n)<=$n ; n++ )); do echo $n doneBash C-Stil für Loops Beispiel
Bash C-Stil für Schleifen mit bedingten Aussagen
Sie können bedingte Aussagen im Inneren einfügen C-Stil für Schleifen. Im folgenden Beispiel haben wir eine IF-ELSE-Anweisung beigefügt, die sogar und ungerade Zahlen zwischen 1 und 7 überprüft und gedruckt wird.
#!/bin/bash für ((n = 1; n)<=7; n++ )) do # Check if the number is even or not if (( $n%2==0 )) then echo "$n is even" else echo "$n is odd" fi doneBash C-Stil für Schleifen Bedingte Aussagen Beispiele
Verwenden Sie die Anweisung "Fortsetzung" mit Bash for Loop
Der 'weitermachen'Anweisung ist ein integrierter Befehl, der steuert, wie ein Skript ausgeführt wird. Neben Bash -Skripten wird es auch in Programmiersprachen wie Python und Java verwendet.
Der Fortsetzung der Erklärung hält die aktuelle Iteration in a Schleife Wenn ein bestimmter Zustand erfüllt ist und dann die Iteration wieder aufnimmt.
Bedenke die Für Schleife unten gezeigt.
#!/bin/bash für n in 1… 10 do if [[$ n -eq '6'], dann echo "Ziel $ n wurde erreicht" Fortsetzung fi echo $ nBash for Loop Weitere Anweisungsbeispiel
Das macht der Code:
- Zeile 2: Markiert den Beginn der für die Schleife und itere die Variable N von 1 bis 10.
- Zeile 4: Überprüft den Wert von n und wenn die Variable gleich 6 ist, gibt das Skript eine Nachricht an STDOut und startet die Schleife bei der nächsten Iteration in Zeile 2 neu.
- Zeile 9: Druckt die Werte nur dann auf den Bildschirm, wenn die Bedingung in Zeile 4 falsch ist.
Das Folgende ist die erwartete Ausgabe nach dem Ausführen des Skripts.
Bash für die Schleife Fortsetzung AnweisungsausgabeVerwenden Sie die Anweisung "Break" mit Bash for Loop
Der 'brechen' Die Anweisung, wie der Name schon sagt, hält die Iteration an oder beendet, wenn eine Bedingung erfüllt ist.
Bedenke die Für Schleife unter.
#!/bin/bash für n in 1… 10 do if [[$ n -eq '6'], dann echo "Ziel $ n wurde erreicht" break fi echo $ n erledigt "alles fertig"Bash for Loop Break Statement
Das macht der Code:
- Zeile 2: Markiert den Beginn der für die Schleife und itere die Variable N von 1 bis 10.
- Zeile 4: Überprüft den Wert von n und wenn die Variable gleich 6 ist, gibt das Skript eine Nachricht an STDOut und hält die Iteration an.
- Zeile 9: Druckt die Zahlen nur dann auf den Bildschirm, wenn die Bedingung in Zeile 4 falsch ist.
Aus der Ausgabe können Sie feststellen, dass die Schleife stoppt, sobald die Variable den Zustand der Schleife erfüllt.
Bash for Loop Break Anweisung AusgabeAbschluss
Das war ein Tutorial über Für Schleifen verprügeln. Wir hoffen, Sie haben das aufschlussreich gefunden. Fühlen Sie sich frei, Ihr Feedback zu wiegen.
- « So installieren Sie die Nagios -Überwachung in Rhel, Rocky und Almalinux
- Die besten Tools zum Erstellen von füllbaren PDF -Formularen unter Linux »