GNU/Linux >> LINUX-Kenntnisse >  >> Linux

4 Beispiele für Bash-If-Anweisungen ( If then fi, If then else fi, If elif else fi, Nested if )

Bedingte Bash-Anweisungen führen unterschiedliche Berechnungen oder Aktionen aus, je nachdem, ob eine vom Programmierer angegebene boolesche Bedingung als wahr oder falsch ausgewertet wird. Diese Anweisungen werden verwendet, um verschiedene Teile Ihres Shell-Programms auszuführen, je nachdem, ob bestimmte Bedingungen erfüllt sind. Die Fähigkeit zur Verzweigung macht Shell-Skripte leistungsfähig.

In Bash haben wir die folgenden Bedingungsanweisungen:

  1. if..then..fi-Anweisung (einfaches If)
  2. if..then..else..fi-Anweisung (If-Else)
  3. if..elif..else..fi-Anweisung (Else If Leiter)
  4. if..then..else..if..then..fi..fi..(Nested if)

Diese ähneln den awk if-Anweisungen, die wir zuvor besprochen haben.

1. Bash If..then..fi-Anweisung

if [ conditional expression ]
then
	statement1
	statement2
	.
fi

Diese if-Anweisung wird auch als einfache if-Anweisung bezeichnet. Wenn der angegebene Bedingungsausdruck wahr ist, werden die zwischen den Schlüsselwörtern „then“ und „fi“ eingeschlossenen Anweisungen eingegeben und ausgeführt. Wenn der angegebene Ausdruck Null zurückgibt, wird die nachfolgende Anweisungsliste ausgeführt.

if then fi Beispiel:

#!/bin/bash
count=100
if [ $count -eq 100 ]
then
  echo "Count is 100"
fi

2. Bash If..then..else..fi-Anweisung

If [ conditional expression ]
then
	statement1
	statement2
	.
else
	statement3
	statement4
	.
fi

Wenn der bedingte Ausdruck wahr ist, führt er die Anweisung 1 und 2 aus. Wenn der bedingte Ausdruck Null zurückgibt, springt er zum Else-Teil und führt die Anweisung 3 und 4 aus. Nach der Ausführung des If/Else-Teils wird die Ausführung mit den nachfolgenden Anweisungen fortgesetzt.

if then else fi Beispiel:

#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
else
  echo "Count is not 100"
fi

Hinweis: Dieser Artikel ist Teil der laufenden Bash-Tutorial-Reihe.

3. Bash If..elif..else..fi

If [ conditional expression1 ]
then
	statement1
	statement2
	.
elif [ conditional expression2 ]
then
	statement3
	statement4
	.
.
.
else
	statement5
fi

Sie können dies if .. elif.. if verwenden, wenn Sie einen von vielen auszuführenden Codeblöcken auswählen möchten. Es prüft Ausdruck 1, wenn er wahr ist, führt es Anweisung 1,2 aus. Wenn Ausdruck1 falsch ist, prüft es Ausdruck2, und wenn alle Ausdrücke falsch sind, tritt es in den Else-Block ein und führt die Anweisungen im Else-Block aus.

if then elif then else fi Beispiel:

#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
elif [ $count -gt 100 ]
then
  echo "Count is greater than 100"
else
  echo "Count is less than 100"
fi

4. Bash If..then..else..if..then..fi..fi..

If [ conditional expression1 ]
then
	statement1
	statement2
	.
else
	if [ conditional expression2 ]
	then
		statement3
		.
	fi
fi

If-Anweisung und Else-Anweisung könnten in Bash verschachtelt sein. Das Schlüsselwort „fi“ kennzeichnet das Ende der inneren if-Anweisung und alle if-Anweisungen sollten mit dem Schlüsselwort „fi“ enden.

Das oben erwähnte „if then elif then else fi“-Beispiel kann wie unten gezeigt in das verschachtelte if umgewandelt werden.

#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
else
  if [ $count -gt 100 ]
  then
    echo "Count is greater than 100"
  else
  echo "Count is less than 100"
  fi
fi

In unserem nächsten Artikel besprechen wir die Verwendung von bedingten Bash-Ausdrücken mit praktischen Beispielen.

Empfohlene Lektüre

Bash 101 Hacks, von Ramesh Natarajan . Ich verbringe die meiste Zeit in der Linux-Umgebung. Daher bin ich natürlich ein großer Fan von Bash-Befehlszeilen- und Shell-Skripten. Vor 15 Jahren, als ich an verschiedenen Varianten von *nix arbeitete, habe ich viel Code auf der C-Shell und der Korn-Shell geschrieben. Später, als ich anfing, als Systemadministrator an Linux zu arbeiten, automatisierte ich so ziemlich jede mögliche Aufgabe mit Bash-Shell-Scripting. Basierend auf meiner Bash-Erfahrung habe ich das eBook „Bash 101 Hacks“ geschrieben, das 101 praktische Beispiele sowohl für die Bash-Befehlszeile als auch für Shell-Scripting enthält. Wenn Sie darüber nachgedacht haben, Bash zu beherrschen, tun Sie sich selbst einen Gefallen und lesen Sie dieses Buch, das Ihnen helfen wird, die Kontrolle über Ihre Bash-Befehlszeile und Ihr Shell-Skripting zu übernehmen.


Linux
  1. So verwenden Sie die Bedingungsanweisung if else in Bash-Skript

  2. Bash-If-Else-Anweisung mit Beispielen

  3. 4 Beispiele für Awk-If-Anweisungen ( if, if else, if else if, :? )

  4. Bash für Schleifenbeispiele

  5. Gibt es eine goto-Anweisung in bash?

Bash if..else-Anweisung

Python if..else-Anweisung

35 Bash-Skriptbeispiele

Bash-Skripting – Case-Statement

Bash If Else Syntax mit Beispielen

Bash If Else und andere bedingte Anweisungen verstehen