10 coole und fantastische Bash-Loop-Beispiele

10 Coole Und Fantastische Bash Loop Beispiele



In der Programmiersprache gibt es hauptsächlich drei Arten von Schleifen (for, while und until). Alle drei Arten von Schleifen sind auf unterschiedliche Weise wichtig. Es gibt keinen großen Unterschied zwischen der while- und der until-Schleife, aber die for-Schleife funktioniert ganz anders als diese beiden. Aus diesem Grund können Sie diese Schleifen verwenden, um als Bash-Benutzer interaktive Skripte zu erstellen.

Das Lernen von Bash-Beispielen kann Ihnen also helfen, Ihre Fähigkeiten beim Erstellen von Skripten zu verbessern. In diesem Tutorial werden wir also 10 coole und fantastische Bash-Loop-Beispiele enthalten, mit denen Sie versuchen können, Ihre Skriptfähigkeiten zu verbessern.







10 coole und fantastische Bash-Loop-Beispiele

In diesem Abschnitt erklären wir verschiedene Beispiele und die Ansätze, die wir in den Schleifen verwendet haben.



Seq-Befehl mit Schleife in Bash

Sie können den seq-Befehl in der for-Schleife verwenden, um die Zahlenfolge zu erstellen. Sie haben beispielsweise ein Bash-Skript „File.sh“, das den folgenden Code enthält:



#!/bin/bash
zum EIN in $ ( seq 5 zwei 25 )
tun
Echo „Zahlen von $A sind'
erledigt





Nach dem Ausführen des Skripts im Terminal erhalten Sie folgendes Ergebnis:

. / Datei.sh




Dateien mit Schleife umbenennen

Mit einem Bash-Skript können Sie die for-Schleifen verwenden, um mehrere Dateien umzubenennen. Sie haben beispielsweise mehrere .txt-Dateien und möchten das aktuelle Datum mit dem Namen hinzufügen. Hier ist also das Beispielskript, das Sie verwenden können:

#!/bin/bash
zum EIN in $ ( ls * .txt ) ; tun
mv $A ( Basisname $A .txt ) _$ ( Datum % d % m % ) .txt
erledigt


Jetzt können Sie das Skript ausführen und es ändert den Namen aller .txt-Dateien, indem es das aktuelle Datum hinzufügt:

. / MeineDatei.sh



Ebenso können Sie die Erweiterungen einer Datei mit einem einzigen Skript ändern. Ändern wir also die Erweiterung .txt in .sh durch das folgende Skript:

#!/bin/bash
zum Datei in * .txt; tun
mv -- ' $Datei ' '{file%.txt}.sh'
erledigt

Nachdem Sie das Skript im Terminal ausgeführt haben, erhalten Sie die .sh- und nicht die .txt-Dateien:

. / MeineDatei.sh


Endlose For-Schleife in Bash

Wenn in der Schleife keine Abbruchbedingung definiert ist, spricht man von einer Endlosschleife. In diesem Beispiel einer Bash-Schleife betrachten wir die unendliche for-Schleife in Bash. Die folgende endlose for-Schleife wird durch ein doppeltes Semikolon ( ; ; ) definiert und enthält keine Anfangs-, Aktions- oder Beendigungsteile.

Das folgende Skript wird fortgesetzt, bis Sie Strg+C drücken oder „quit“ als Eingabe eingeben. Dieses Skript gibt jede Zahl von 10 bis 50 aus, die als Eingabe angegeben wird. Andernfalls wird „Nummer außerhalb des zulässigen Bereichs“ ausgegeben.

#!/bin/bash
#Endlosschleife
zum ( ( ; ; ) )
tun
Echo 'Geben Sie eine Zahl zwischen 10 und 50 ein'
lesen n
wenn [ $n == 'Verlassen' ]
dann
Echo 'beendet'
Ausfahrt 0
sein
wenn ( ( $n < 10 || $n > fünfzig ) )
dann
Echo 'Die Nummer ist außerhalb des Bereichs'
anders
Echo 'Die Nummer lautet $n '
sein
erledigt

Wir haben 45 und 23 gültige Eingaben für das obige Skript gemacht. Danach geben wir 2 als Eingabe aus, was in der Ausgabe anzeigt, dass „die Zahl außerhalb des zulässigen Bereichs liegt“. Danach geben wir quit als Eingabe ein, um das Skript zu schließen. Hier können Sie auch Strg+C drücken, um die Endlosschleife zu verlassen.

Schleife mit drei Ausdrücken in Bash

Aus dem Namen der Drei-Ausdruck-Schleife ist bekannt, dass sie aus drei Ausdrücken besteht, die auch Steuerausdrücke genannt werden. Der erste Ausdruck (EXP1) ist der Initialisierer, der zweite Ausdruck (EXP2) ist der Schleifentest oder die Bedingung und der dritte Ausdruck (EXP3) ist der Zählausdruck/Schritt. Lassen Sie uns eine Schleife mit drei Ausdrücken in Bash ausführen:

#!/bin/bash
zum ( ( n = 5 ; n > = 1 ; n-- ) )
tun
Echo 'Buch $n '
erledigt

Wenn Sie das obige Skript ausführen, erhalten Sie die folgende Ausgabe.

Schleife mit mehreren Bedingungen

Im folgenden Bash-Loop-Beispiel haben wir die until-Schleife mit mehreren Bedingungen verwendet. In diesem Skript haben wir „m“ und „n“, zwei Variablen, deren Werte 20 bzw. 10 sind, genommen und die Grenze von 15 beibehalten. Hier haben wir „m“- und „n“-Bedingungen in der Schleife zusammengefügt, in dem die Schleife läuft, bis der Wert von „m“ kleiner als der Grenzwert und „n“ größer als der Grenzwert ist.

#!/bin/bash
Grenze = fünfzehn
m = zwanzig
n = 10
bis um [ [ $m -lt $limit || $n -gt $limit ] ] ;
tun
Echo „Wenn M = $m dann N = $n '
( ( m-- ) )
( ( n++ ) )
erledigt

Sie können sehen, dass das Ausführen des obigen Skripts ausgeführt wird, bis die Werte von „m“ und „n“ auf das gleiche Niveau kommen.

Datei in Bash lesen

In Bash können Sie den Inhalt einer Datei auf verschiedene Arten lesen. In diesem Beispiel einer Bash-Schleife lesen wir den Inhalt der Datei über den Dateinamen. Wir können das folgende Skript verwenden, um die Datei in Bash zu lesen:

#!/bin/bash
Echo 'Inhalt der eingegebenen Datei ist:'
während
lesen Linie
tun
Echo $line
erledigt < ~Dokumente / Linuxhint.txt

Nachdem Sie das obige Skript ausgeführt haben, können Sie den vollständigen Inhalt der eingegebenen Datei lesen.

Schreiben in eine Datei

Sie können die Schleifen im Skript verwenden, um eine Datei direkt vom Terminal aus zu bearbeiten. Wenn wir beispielsweise eine txt-Datei „Example.txt“ haben und einige Informationen hinzufügen möchten, können wir das folgende Skript verwenden:


Wenn Sie das obige Skript ausführen, werden Sie aufgefordert, die Details einzugeben:


Sobald Sie die Details eingegeben haben, drücken Sie bitte STRG + D, um die Datei zu speichern, und STRG + Z, um den Vorgang erfolgreich abzuschließen.

Break and Continue-Anweisungsschleife in Bash

In der Bash können Sie Ihre Schleifenanweisung nach der Unterbrechung fortsetzen. Die break-Anweisung verlässt die Schleife und übergibt dann die Kontrolle an die nächste gegebene Anweisung. Iteration Nummer zwei beginnt, nachdem die aktuelle Iteration mit derselben Continue-Anweisung übersprungen wurde.

#!/bin/bash
Auf eins = 16
bis um FALSCH
tun
( ( Auf eins-- ) )
wenn [ [ $num -Gl 13 ] ]
dann
fortsetzen
elf [ [ $num - das 4 ] ]
dann
Unterbrechung
sein
Echo 'LinuxHint= $num '
erledigt

Im folgenden Bash-Skript können Sie sehen, dass, wenn „num“ gleich 13 ist, der Rest des Schleifenkörpers übersprungen und zur nächsten Iteration gesprungen wird. Ebenso wird die Schleife unterbrochen, wenn „num“ kleiner oder gleich 4 ist.


Das obige Skript zeigt, dass die Schleife bei 15 beginnt, bei 13 bricht und bis 5 fortgesetzt wird.

Berechnung eines Durchschnitts in Bash

Sie können den Durchschnitt berechnen, indem Sie das Skript in einer Bash-Schleife ausführen. Dabei kann der Benutzer den Durchschnitt von Zahlen innerhalb eines definierten Bereichs berechnen. Das folgende Skript berechnet den Durchschnitt der vom Benutzer bereitgestellten Eingaben.

#!/bin/bash
markiert = '0'
DURCHSCHNITT = '0'
SUMME = '500'
AUF EINS = '5'
während Stimmt ; tun
Echo -n 'Geben Sie Ihre Noten ein oder drücken Sie 'q', um abzubrechen' ; lesen Markierungen;
wenn ( ( ' $Marken ' < '0' ) ) || ( ( ' $Marken ' > '100' ) ) ; dann
Echo 'Bitte geben Sie Ihre Noten ein'
elf [ ' $Marken ' == 'q' ] ; dann
Echo „Durchschnittsnoten sind: $ DURCHSCHNITT %'
Unterbrechung
anders
SUMME =$ [ $SUMME + $Marken ]
AUF EINS =$ [ $ZAHL + 1 ]
DURCHSCHNITT =$ [ $SUMME / $ZAHL ]
sein
erledigt

Wenn die Eingabe nicht innerhalb des Bereichs liegt, wird die Meldung „Bitte geben Sie Ihre Noten ein“ gedruckt. Wenn der Benutzer „q“ drückt, nachdem er alle Markierungen eingegeben hat, berechnet das Skript den ungefähren Durchschnitt aller eingegebenen Zahlen.

Wenn das obige Skript ausgeführt wird, sieht Ihre Ausgabe in etwa so aus.

Lesen Sie die Befehlszeilenargumente in Bash

In Bash können Sie einzelne Befehlszeilenargumente mithilfe von Schleifen lesen. Das Skript gibt die formatierten Argumentwerte aus. Wir führen Befehlszeilenargumente in Bash mit einer While-Schleife im folgenden Skript aus. Dadurch drucken Sie den Wert, indem Sie die gültige Option des Argumentwerts mit Hilfe eines einzigen Befehls übergeben.

#!/bin/bash
während Getopte N:F:M: OPT
tun
Fall ' ${OPT} '
in
N ) Name = ${OPTARG} ;;
F ) Der Name des Vaters = ${OPTARG} ;;
M ) Name der Mutter = ${OPTARG} ;;
* ) Echo 'Ungültig'
Ausfahrt 1 ;;
esac
erledigt
Druckf 'Name: $name \n Der Name des Vaters: $vatername \n Name der Mutter: $Muttername \n '

Daher können Sie die formatierten Argumentwerte in die Ausgabe drucken, indem Sie das obige Skript in einer Bash ausführen.

Einpacken

Das waren also die kurzen Informationen zu den 10 coolen und großartigen Bash-Loop-Beispielen, die Sie lernen können. Wir haben verschiedene Arten von Schleifen verwendet, um das interaktive Skript einfach zu erstellen. Darüber hinaus haben wir auch die grundlegenden Ansätze erläutert, die in den obigen Beispielen verwendet werden. Wenn Sie detaillierte Informationen zu den Schleifen in Bash haben, besuchen Sie bitte unsere offizielle Website, um mehr zu erfahren.