logo

Bash Else If

V tej temi bomo razumeli, kako uporabiti izjave else-if (elif) v skriptih Bash za dokončanje naših avtomatiziranih nalog.

Bash else-if stavek se uporablja za več pogojev. Je kot dodatek k stavku Bash if-else. V Bash elif je lahko več blokov elif z logičnim izrazom za vsakega od njih. V primeru prvega 'stavka if', če je pogoj napačen, se preveri drugi 'if pogoj'.

Sintaksa Bash Else If (elif)

Sintakso stavka else-if v skriptni lupini Bash lahko definiramo kot:

java typeof spremenljivka
 if [ condition ]; then elif [ condition ]; then else fi 

Tako kot if-else lahko uporabimo nabor enega ali več pogojev, združenih s pogojnimi operatorji. Nabor ukazov se izvede, ko je pogoj izpolnjen. Če ni pravega pogoja, se izvede blok ukazov znotraj 'stavka else'.

Sledi nekaj primerov, ki prikazujejo uporabo stavka else-if:

Primer 1

Naslednji primer je sestavljen iz dveh različnih scenarijev, kjer je prvi stavek else-if pogoj resničen, v drugem stavku else-if pa je pogoj napačen.

Bash skript

 #!/bin/bash read -p 'Enter a number of quantity:' num if [ $num -gt 100 ]; then echo 'Eligible for 10% discount' elif [ $num -lt 100 ]; then echo 'Eligible for 5% discount' else echo 'Lucky Draw Winner' echo 'Eligible to get the item for free' fi 

Izhod

  • Če vnesemo število količine kot 110, potem je pogoj 'stavka if' ovrednoten kot res in rezultat je videti tako:
Bash Else If
  • Če vnesemo število količine kot 90, potem je pogoj 'izjave elif' ovrednoten kot true, izhod pa je videti takole:
Bash Else If
  • Če vnesemo število količine kot 100, noben pogoj ne bo resničen. V tem primeru se izvede blok ukazov znotraj 'stavka else' in rezultat je videti tako:
Bash Else If

Tako deluje osnovni bash else-if.

linux free ipconfig

Primer 2

Ta primer prikazuje, kako uporabiti več pogojev s stavkom else-if v Bashu. Za združevanje več pogojev uporabljamo logične operatorje bash.

Bash skript

zgodovina v Javi
 #!/bin/bash read -p 'Enter a number of quantity:' num if [ $num -gt 200 ]; then echo 'Eligible for 20% discount' elif [[ $num == 200 || $num == 100 ]]; then echo 'Lucky Draw Winner' echo 'Eligible to get the item for free' elif [[ $num -gt 100 && $num -lt 200 ]]; then echo 'Eligible for 10% discount' elif [ $num -lt 100 ]; then echo 'No discount' fi 

Opomba: Upoštevati je treba, da blok else ni obvezen.

Izhod

Če vnesemo število količine kot 100, bo rezultat videti takole:

Bash Else If

Preizkusite ta primer z vnosom različnih vrednosti in preverite rezultate.

Zaključek

V tej temi smo se s primeri naučili sintakse in uporabe stavka Bash else-if.