In diesem Thema erfahren Sie, wie Sie if-else-Anweisungen in Bash-Skripten verwenden, um unsere automatisierten Aufgaben abzuschließen.
Bash-if-else-Anweisungen werden verwendet, um bedingte Aufgaben im sequentiellen Ablauf der Ausführung von Anweisungen auszuführen. Manchmal möchten wir einen bestimmten Satz von Anweisungen verarbeiten, wenn eine Bedingung wahr ist, und einen anderen Satz von Anweisungen, wenn sie falsch ist. Um solche Aktionen auszuführen, können wir den if-else-Mechanismus anwenden. Wir können die Bedingung mit der „if-Anweisung“ anwenden.
Bash If Else-Syntax
Eine Syntax der if-else-Anweisung im Bash-Shell-Scripting kann wie folgt definiert werden:
Fibonacci-Reihe in c
if [ condition ]; then else fi
Wichtige Punkte, die Sie beachten sollten
- Wir können eine Reihe von einer oder mehreren Bedingungen verwenden, die mithilfe von Bedingungsoperatoren verknüpft sind.
- Else-Blockbefehle umfassen eine Reihe von Aktionen, die ausgeführt werden, wenn die Bedingung falsch ist.
- Das Semikolon (;) nach dem bedingten Ausdruck ist ein Muss.
Sehen Sie sich die folgenden Beispiele an, die die Verwendung der if-else-Anweisung im Bash-Skript veranschaulichen:
Beispiel 1
Das folgende Beispiel besteht aus zwei verschiedenen Szenarien, in denen in der ersten if-else-Anweisung die Bedingung wahr ist und in der zweiten if-else-Anweisung die Bedingung falsch ist.
#!/bin/bash #when the condition is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' else echo '10 is not greater than 3.' fi #when the condition is false if [ 3 -gt 10 ]; then echo '3 is greater than 10.' else echo '3 is not greater than 10.' fi
Ausgabe
Im ersten if-else-Ausdruck ist die Bedingung ( 10 -gt 3 ) wahr und daher wird die Anweisung im if-Block ausgeführt. Im anderen if-else-Ausdruck hingegen ist die Bedingung ( 3 -gt 10 ) falsch und daher wird die Anweisung im else-Block ausgeführt.
Beispiel 2
In diesem Beispiel haben wir erklärt, wie man mehrere Bedingungen mit der if-else-Anweisung in Bash verwendet. Wir verwenden logische Bash-Operatoren, um mehrere Bedingungen zu verknüpfen.
np.clip
#!/bin/bash # When condition is true # TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 9 || 2 -lt 1 || 25 -gt 20 ]]; then echo 'Given condition is true.' else echo 'Given condition is false.' fi # When condition is false #TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 8 || 3 -gt 4 || 8 -gt 8 ]]; then echo 'Given condition is true.' else echo 'Given condition is not true.' fi
Ausgabe
Bash If Else-Anweisung in einer einzelnen Zeile
Wir können eine vollständige „if-else-Anweisung“ zusammen mit den Befehlen in einer einzigen Zeile schreiben. Sie müssen die angegebenen Regeln befolgen, um die if-else-Anweisung in einer einzelnen Zeile zu verwenden:
- Verwenden Sie am Ende von Anweisungen in if- und else-Blöcken ein Semikolon (;).
- Verwenden Sie Leerzeichen als Trennzeichen, um alle Anweisungen anzuhängen.
Nachfolgend finden Sie ein Beispiel, das zeigt, wie die if-else-Anweisung in einer einzelnen Zeile verwendet wird:
Beispiel
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then echo 'The value you typed is greater than 9.'; else echo 'The value you typed is not greater than 9.'; fi
Ausgabe
Wenn wir einen Wert wie 25 eingeben, sieht die Ausgabe so aus:
Negation diskrete Mathematik
Bash verschachtelt, wenn sonst
Genau wie eine verschachtelte if-Anweisung kann die if-else-Anweisung auch innerhalb einer anderen if-else-Anweisung verwendet werden. In der Bash-Skripterstellung wird es als verschachteltes if-else bezeichnet.
Im Folgenden finden Sie ein Beispiel, das die Verwendung der verschachtelten if-else-Anweisung in Bash erläutert:
Beispiel
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then if [ $value -lt 11 ]; then echo '$value>9, $value<11' else echo 'the value you typed is greater than 9.' fi not < pre> <p> <strong>Output</strong> </p> <p>If we enter 10 as value, then the output will look like this:</p> <img src="//techcodeview.com/img/bash-tutorial/63/bash-if-else-4.webp" alt="Bash If Else Statement"> <h2>Conclusion <p>In this topic, we have learned about the syntax and usage of <strong>Bash if-else</strong> statement with the examples.</p> <hr></h2></11'>