Bash: If, Else If, Else-Beispiele
In diesem Bash-Tutorial-Beitrag bringen wir Ihnen das Bash-Skript mit bei WENN, ELIF, Und ANDERS Befehle mit mehr als 10 Beispielen.
10+ Bash: If, Else If, Else-Beispiele
Hier sind die 10 Bash-Beispiele:
1. Einfache If-Anweisung in Bash:
if [ $num -gt 10 ]; then echo "Number is greater than 10" fi
2. If-else-Anweisung in Bash:
if [ $num -gt 10 ]; then echo "Number is greater than 10" else echo "Number is less than or equal to 10" fi
3. If-else-if-Anweisung in Bash:
if [ $num -gt 10 ]; then echo "Number is greater than 10" elif [ $num -eq 10 ]; then echo "Number is equal to 10" else echo "Number is less than 10" fi
4. Verschachtelte if-Anweisung in Bash:
if [ $num -gt 10 ]; then if [ $num -lt 20 ]; then echo "Number is between 10 and 20" fi fi
5. Verwendung logischer Operatoren in Bash:
if [ $num -gt 10 ] && [ $num -lt 20 ]; then echo "Number is between 10 and 20" fi
6. Dateiexistenz in Bash prüfen:
if [ -e /path/to/file ]; then echo "File exists" else echo "File does not exist" fi
7. Überprüfen, ob eine Variable in der Bash leer ist:
if [ -z "$var" ]; then echo "Variable is empty" else echo "Variable is not empty" fi
8. Verwenden einer case-Anweisung in der Bash:
case $fruit in apple) echo "Fruit is apple" ;; orange) echo "Fruit is orange" ;; *) echo "Fruit is not apple or orange" ;; esac
9. Befehlsersetzung in Bash verwenden:
if [ $(ls /path/to/dir | wc -l) -gt 0 ]; then echo "Directory is not empty" else echo "Directory is empty" fi
10. Arithmetische Ausdrücke in Bash verwenden:
if (( $num > 10 )); then echo "Number is greater than 10" elif (( $num == 10 )); then echo "Number is equal to 10" else echo "Number is less than 10" fi
3 Beispiele für eine If-Anweisung in Bash zur String-Gleichheit
Mit doppelten Klammern und dem ==-Operator:
In diesem Beispiel verwenden wir doppelte Klammern und die ==
Operator zum Testen auf String-Gleichheit. Der Vorteil der Verwendung von Doppelklammern besteht darin, dass sie flexibler sind und komplexere Bedingungen bewältigen können.
if [[ "$str1" == "$str2" ]]; then echo "Strings are equal" else echo "Strings are not equal" fi
Mit dem Testbefehl und dem =-Operator:
In diesem Beispiel verwenden wir die test
Befehl mit dem =-Operator, um die String-Gleichheit zu testen. Der test
Der Befehl entspricht dem [
command, but requires a trailing semicolon or space before the closing bracket.
if test "$str1" = "$str2"; then echo "Strings are equal" else echo "Strings are not equal" fi
Using the case statement:
In the below example, we are using a case
statement to check if $str1
matches $str2
. If the two strings match, the “Strings are equal” message is printed. Otherwise, You will see the “Strings are not equal” message in output. The case
the statement allows for more complex matching patterns and can be useful in situations where multiple conditions need to be checked.
case "$str1" in "$str2") echo "Strings are equal" ;; *) echo "Strings are not equal" ;; esac
3 examples of If statement in bash on number equality
Using double brackets and == operator:
if [[ "$num1" == "$num2" ]]; then echo „Zahlen sind gleich“ else echo „Zahlen sind ungleich“ fi
Verwenden des Testbefehls und des Operators -eq:
if test "$num1" -eq "$num2"; then echo "Numbers are equal" else echo "Numbers are not equal" fi
Verwendung eines arithmetischen Ausdrucks:
if (( num1 == num2 )); then echo "Numbers are equal" else echo "Numbers are not equal" fi
3 Beispiel einer If-Anweisung in Bash für weniger als eine Zahl
Mit doppelten Klammern und dem Operator -lt:
if [[ "$num1" -lt "$num2" ]]; then echo "$num1 is less than $num2" else echo "$num1 is not less than $num2" fi
Verwenden des Testbefehls und des Operators -lt:
if test "$num1" -lt "$num2"; then echo "$num1 is less than $num2" else echo "$num1 is not less than $num2" fi
Verwendung eines arithmetischen Ausdrucks:
if (( num1 < num2 )); then echo "$num1 is less than $num2" else echo "$num1 is not less than $num2" fi
If-Anweisung in Bash mit logischem UND-Operator
In diesem Beispiel verwenden wir den logischen UND-Operator &&
um zu testen, ob $num1
ist größer als 0 UND kleiner als 10. Die -gt
Und -lt
Operatoren werden für numerische Vergleiche verwendet. Wenn beide Bedingungen zutreffen, wird die Meldung „$num1 liegt zwischen 0 und 10“ ausgegeben. Andernfalls wird die Meldung „$num1 liegt nicht zwischen 0 und 10“ ausgegeben. Beachten Sie, dass wir die separaten Klammern verwenden [ ]
für jede Bedingung, die wir bewerten möchten.
if [ "$num1" -gt 0 ] && [ "$num1" -lt 10 ]; then echo "$num1 is between 0 and 10" else echo "$num1 is not between 0 and 10" fi
If-Anweisung in Bash mit logischem ODER-Operator
In diesem Beispiel verwenden wir den logischen ODER-Operator ||
um zu testen, ob $day
ist gleich „Sonntag“ ODER „Samstag“. Wenn eine der beiden Bedingungen zutrifft, wird die Meldung „Juhu, es ist Wochenende!“ angezeigt. gedruckt wird. Andernfalls wird die Meldung „Leider ist es ein Wochentag“ gedruckt. Beachten Sie, dass wir separate Klammern verwenden [ ]
für jede Bedingung, die wir bewerten möchten.
if [ "$day" = "Saturday" ] || [ "$day" = "Sunday" ]; then echo "Yay, It's the weekend!" else echo "Sadly, It's a weekday" fi
3 Beispiele für Elif-Bedingungen in Bash
Mit elif auf mehrere Bedingungen testen:
if [ "$num" -gt 0 ]; then echo "$num is positive" elif [ "$num" -lt 0 ]; then echo "$num is negative" else echo "$num is zero" fi
Verwendung von elif mit einem anderen Operator:
In diesem Beispiel verwenden wir eine if
Anweisung zum Testen, ob $user
ist nicht gleich „root“. Wenn die Bedingung wahr ist, wird die Meldung „Sie haben keinen Root-Zugriff“ gedruckt.
Wenn die Bedingung falsch ist, dann elif
Anweisung testet if $user
ist gleich „root“. Wenn diese Bedingung erfüllt ist, wird die Meldung „Sie haben Root-Zugriff“ gedruckt.
Beachten Sie, dass wir die verwenden !=
Und =
Operatoren für den String-Vergleich.
if [ "$user" != "root" ]; then echo "You do not have root access" elif [ "$user" = "root" ]; then echo "You have root access" fi
Verwendung von elif mit einer verschachtelten if-Anweisung:
In diesem Beispiel verwenden wir a if
Anweisung zum Testen, ob $day
ist gleich „Samstag“. Wenn die Bedingung erfüllt ist, wird die Meldung „Juhu, es ist Wochenende!“ angezeigt. gedruckt wird.
Wenn die Bedingung falsch ist, wird die elif
Anweisung testet if $day
ist gleich „Sonntag“. Wenn diese Bedingung zutrifft, wird die Meldung „Juhu, es ist Wochenende!“ angezeigt. gedruckt wird.
Wenn beide Bedingungen falsch sind, wird die else
Die Anweisung führt eine verschachtelte Operation aus if
Anweisung, die testet, ob $hour
ist kleiner als 12. Wenn diese Bedingung erfüllt ist, wird die Meldung „Guten Morgen!“ angezeigt. gedruckt wird. Wenn die Bedingung falsch ist, wird die Meldung „Guten Tag!“ angezeigt. gedruckt wird.
if [ "$day" = "Saturday" ]; then echo "Yay, It's the weekend!" elif [ "$day" = "Sunday" ]; then echo "Yay, It's the weekend!" else if [ "$hour" -lt 12 ]; then echo "Good morning!" else echo "Good afternoon!" fi fi