„Bash If-Other“ teiginys su pavyzdžiais

„If-else“ sakiniai „bash“ scenarijuose yra panašūs į bet kurias kitas programavimo kalbas; tai programos metodas priimti sprendimus.

Į if-else teiginius, pareiškimo bloko vykdymas sprendžiamas remiantis if rezultatu būklė.



„Bash If-Else“ teiginio sintaksė

if-else Sintaksė sakinys bash yra:


if [condition] then
//if block code else // else block code fi

Jei būklė bus true, tai if blokinis kodas yra vykdomas ir jei sąlyga įvertinama kaip false tada else blokinis kodas vykdomas.

Pastaba:Jei blokuoti tik bus įvykdytas, jei būklė įvertins tiesa .
Kito sakinio ir kito kodo blokas yra neprivalomas.

Turime baigti if pareiškimas su fi raktinis žodis.




Sąlyginiai palyginimai

Sąlyginio konstrukto naudojama išraiška turi būti įvertinta arba true arba false. Išraiška gali būti viena eilutė arba kintamasis.

  • mažiau nei - žymima: $a -lt $b arba $a < $b
  • geresnis negu - žymima: $a -gt $b arba $a > $b
  • mažesnis arba lygus - žymima: $a -le $b arba $a <= $b
  • didesnis arba lygus - žymima: $a -ge $b arba $a >= $b
  • lygus - žymima: $a -eq $b arba $a == $b
  • nelygus - žymima: $a -ne $b arba $a != $b

Loginiai operatoriai

Išraiška if viduje teiginys taip pat gali būti logiškas kelių palyginimų derinys.

Loginiai operatoriai yra:

  • logiška ir - žymima $a AND $b arba $a && $b vertina iki true kai teisingi abu kintamieji ar teiginiai.
  • logiškas arba - žymima $a OR $b arba $a || $b vertina iki true kai vienas iš kintamųjų ar teiginių yra teisingi.
Pastaba:Naudojant loginius operatorius, sąlyginės išraiškos turėtų būti apgaubtos skliaustais [[]].

Pavyzdžiui:


#!/bin/bash first_name='John' last_name='Doe' if [[ $first_name = 'John' && $last_name = 'Doe' ]] then echo 'hello John Doe' fi

Bash, jei pavyzdys

if teiginys yra tik paprastas sąlyginis teiginys. Jei sąlyga if[] vertina iki true tada if vykdomas kodo blokas.

Pavyzdys:

#!/bin/bash read -p 'Enter a number: ' mynumber if [ $mynumber -gt 10 ] then
echo 'The number you entered is greater than 10' fi
Pastaba:Ankstesniame pavyzdyje, jei įvesime skaičių, kuris yra mažesnis nei 10, niekas nebus spausdinamas.

„Bash if-else“ pavyzdys

Kai if rezultatas sąlyga yra false tada kodas else blokas vykdomas, jei yra vienas.

Pavyzdžiui:


#!/bin/bash read -p 'Enter a number: ' mynumber if [ $mynumber -gt 10 ] then
echo 'The number you entered is greater than 10' else
echo 'The number you entered is less than 10' fi


Bash if-elif-else Pavyzdys

elif (else if) naudojamas, kai yra keli if sąlygos.

Pavyzdžiui:

#!/bin/bash read -p 'Enter your exam grade: ' grade if [ $grade -ge 80 ] then
echo 'You got A' elif [ $grade -ge 70 ] then
echo 'You got B' elif [ $grade -ge 60 ] then
echo 'You got C' else
echo 'Fail' fi


Bashas įdėtas, jei pavyzdys

Taip pat galime turėti lizdus if pareiškimus.

Pavyzdžiui:


#!/bin/bash read -p 'Enter value of a :' a read -p 'Enter value of b :' b read -p 'Enter value of c :' c if [ $a -gt $b ] then
if [ $a -gt $c ]
then
echo 'a is greatest'
else
echo 'c is greatest'
fi else
if [ $b -gt $c ]
then
echo 'b is greatest'
else echo 'c is greatest'
fi fi