logo

Bash If Else

V tejto téme pochopíme, ako používať príkazy if-else v skriptoch Bash na dokončenie našich automatických úloh.

Príkazy Bash if-else sa používajú na vykonávanie podmienených úloh v sekvenčnom toku vykonávania príkazov. Niekedy chceme spracovať konkrétnu množinu príkazov, ak je podmienka pravdivá, a inú množinu príkazov, ak je nepravdivá. Na vykonanie takéhoto typu akcií môžeme použiť mechanizmus if-else. Podmienku môžeme použiť s príkazom „if“.

Syntax Bash If Else

Syntax príkazu if-else v skriptovaní Bash Shell možno definovať takto:

 if [ condition ]; then else fi 

Dôležité body na zapamätanie

  • Môžeme použiť množinu jednej alebo viacerých podmienok spojených pomocou podmienených operátorov.
  • Blokové príkazy Else obsahujú množinu akcií, ktoré sa majú vykonať, keď je podmienka nepravdivá.
  • Bodkočiarka (;) za podmieneným výrazom je nevyhnutná.

Pozrite si nasledujúce príklady, ktoré demonštrujú použitie príkazu if-else v skripte Bash:

Príklad 1

Nasledujúci príklad pozostáva z dvoch rôznych scenárov, kde v prvom príkaze if-else je podmienka pravdivá a v druhom príkaze if-else je podmienka nepravdivá.

 #!/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 

Výkon

Bash If Else vyhlásenie

V prvom výraze if-else je podmienka ( 10 -gt 3 ) pravdivá, a tak sa vykoná príkaz v bloku if. Zatiaľ čo v inom výraze if-else je podmienka ( 3 -gt 10 ) nepravdivá, a tak sa vykoná príkaz v bloku else.

Príklad 2

V tomto príklade sme vysvetlili, ako používať viaceré podmienky s príkazom if-else v Bash. Na spojenie viacerých podmienok používame logické operátory bash.

 #!/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 

Výkon

Bash If Else vyhlásenie

Bash If Else vyhlásenie v jednom riadku

Môžeme napísať kompletný príkaz „if-else“ spolu s príkazmi na jeden riadok. Ak chcete použiť príkaz if-else v jednom riadku, musíte dodržiavať dané pravidlá:

  • Na konci príkazov v blokoch if a else použite bodkočiarku (;).
  • Na pripojenie všetkých príkazov použite medzery ako oddeľovač.

Nižšie je uvedený príklad, ktorý ukazuje, ako použiť príkaz if-else v jednom riadku:

1 z 1 000,00

Príklad

 #!/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 

Výkon

Keď zadáme hodnotu 25, výstup bude vyzerať takto:

Bash If Else vyhlásenie

Bash Nested If Else

Rovnako ako vnorený príkaz if, príkaz if-else možno použiť aj v inom príkaze if-else. V skriptovaní Bash sa nazýva vnorené if-else.

Nasleduje príklad vysvetľujúci, ako použiť vnorený príkaz if-else v Bash:

Príklad

 #!/bin/bash read -p &apos;Enter a value:&apos; value if [ $value -gt 9 ]; then if [ $value -lt 11 ]; then echo &apos;$value&gt;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'>