logo

Bash If Else

Šioje temoje mes suprasime, kaip naudoti if-else teiginius Bash scenarijuose, kad mūsų automatizuotos užduotys būtų įvykdytos.

Bash if-else teiginiai naudojami sąlyginėms užduotims atlikti nuosekliame teiginių vykdymo sraute. Kartais norime apdoroti tam tikrą teiginių rinkinį, jei sąlyga teisinga, ir kitą teiginių rinkinį, jei ji klaidinga. Tokio tipo veiksmams atlikti galime pritaikyti if-else mechanizmą. Sąlygą galime taikyti su „if teiginiu“.

„Bash If Else“ sintaksė

If-else sakinio sintaksė „Bash Shell Scripting“ gali būti apibrėžta taip:

 if [ condition ]; then else fi 

Svarbūs dalykai, kuriuos reikia atsiminti

  • Galime naudoti vienos ar kelių sąlygų rinkinį, sujungtą naudojant sąlyginius operatorius.
  • „Else“ blokų komandos apima veiksmų, kuriuos reikia atlikti, kai sąlyga yra klaidinga, rinkinį.
  • Kabliataškis (;) po sąlyginės išraiškos yra būtinas.

Peržiūrėkite šiuos pavyzdžius, rodančius if-else teiginio naudojimą Bash Script:

1 pavyzdys

Toliau pateiktą pavyzdį sudaro du skirtingi scenarijai, kai pirmame teiginyje if-else sąlyga yra teisinga, o antrajame teiginyje if-else sąlyga yra klaidinga.

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

Išvestis

Bash If Else pareiškimas

Pirmoje if-else išraiškoje sąlyga ( 10 -gt 3 ) yra teisinga, taigi, jei bloko sakinys yra vykdomas. Tuo tarpu kitoje if-else išraiškoje sąlyga ( 3 -gt 10 ) yra klaidinga, todėl įvykdomas teiginys else bloke.

2 pavyzdys

Šiame pavyzdyje paaiškinome, kaip naudoti kelias sąlygas su if-else sakiniu Bash. Norėdami sujungti kelias sąlygas, naudojame bash loginius operatorius.

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

Išvestis

Bash If Else pareiškimas

Bash If Else pareiškimas vienoje eilutėje

Galime parašyti visą „if-else teiginį“ kartu su komandomis vienoje eilutėje. Norėdami naudoti if-else teiginį vienoje eilutėje, turite laikytis nurodytų taisyklių:

  • Jei ir else blokuose naudokite kabliataškį (;) teiginių pabaigoje.
  • Norėdami pridėti visus teiginius, naudokite tarpus kaip skyriklį.

Toliau pateikiamas pavyzdys, rodantis, kaip vienoje eilutėje naudoti teiginį if-else:

Pavyzdys

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

Išvestis

Kai įvesime reikšmę kaip 25, tada išvestis atrodys taip:

Bash If Else pareiškimas

Bash Neted If Else

Kaip ir įdėtas if teiginys, if-else teiginys taip pat gali būti naudojamas kitame if-else sakinyje. Bash scenarijuose jis vadinamas įdėtu if-else.

Toliau pateikiamas pavyzdys, paaiškinantis, kaip naudoti įdėtą if-else teiginį Bash:

Pavyzdys

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