Ehdolliset lausunnot: On yhteensä 5 ehdollista lauseketta, joita voidaan käyttää bash-ohjelmoinnissa
- jos lausunto
- jos-muu lausunto
- if..elif..else..fi lauseke (Else If tikkaat)
- jos..niin..muuta..jos..niin..fi..fi..(Sisätetty jos)
- vaihtaa lausunto
Niiden kuvaus syntaksin kanssa on seuraava:
jos lausunto
Tämä lohko käsitellään, jos määritetty ehto on tosi.
Syntaksi:
if [ expression ] then statement fi>
jos-muu lausunto
Jos määritetty ehto ei ole tosi if-osassa, muu osa suoritetaan.
Syntaksi
if [ expression ] then statement1 else statement2 fi>
if..elif..else..fi lauseke (Else If tikkaat)
Jos haluat käyttää useita ehtoja yhdessä if-else-lohkossa, elif-avainsanaa käytetään shellissä. Jos lauseke1 on tosi, se suorittaa käskyt 1 ja 2, ja tämä prosessi jatkuu. Jos mikään ehdoista ei ole totta, se käsittelee muun osan.
Syntaksi
if [ expression1 ] then statement1 statement2 . . elif [ expression2 ] then statement3 statement4 . . else statement5 fi>
jos..niin..muuta..jos..niin..fi..fi..(Sisätetty jos)
Sisäkkäistä if-else-lohkoa voidaan käyttää, kun yksi ehto täyttyy ja se tarkistaa toisen ehdon uudelleen. Syntaksissa, jos lauseke1 on epätosi, se käsittelee muun osan, ja taas lauseke2 tarkistetaan.
Syntaksi:
if [ expression1 ] then statement1 statement2 . else if [ expression2 ] then statement3 . fi fi>
vaihtaa lausunto
case-lause toimii kytkinlauseena, jos määritetty arvo täsmää kuvion kanssa, se suorittaa kyseisen mallin lohkon
Kun vastaavuus löytyy, kaikki liittyvät lauseet, kunnes kaksoispuolipiste (;;) suoritetaan.
Tapaus lopetetaan, kun viimeinen komento suoritetaan.
Jos vastaavuutta ei löydy, tapauksen poistumistila on nolla.
Syntaksi:
case in Pattern 1) Statement 1;; Pattern n) Statement n;; esac>
Esimerkkiohjelmat
Esimerkki 1:
Toteutusif>lausunto
#Initializing two variables> a=10> b=20> > #Check whether they are equal> if> [>$a> ==>$b> ]> then> >echo> 'a is equal to b'> fi> > #Check whether they are not equal> if> [>$a> !=>$b> ]> then> >echo> 'a is not equal to b'> fi> |
>
>
Lähtö
$bash -f main.sh a is not equal to b>
Esimerkki 2:
Toteutusif.else>lausunto
#Initializing two variables> a=20> b=20> > if> [>$a> ==>$b> ]> then> >#If they are equal then>print> this> >echo> 'a is equal to b'> else> >#>else> print> this> >echo> 'a is not equal to b'> fi> |
>
>
Lähtö
$bash -f main.sh a is equal to b>
Esimerkki 3:
Toteutusswitch>lausunto
CARS=>'bmw'> > #Pass the variable in string> case> '$CARS'> in> >#>case> 1> >'mercedes'>)>echo> 'Headquarters - Affalterbach, Germany'> ;;> > >#>case> 2> >'audi'>)>echo> 'Headquarters - Ingolstadt, Germany'> ;;> > >#>case> 3> >'bmw'>)>echo> 'Headquarters - Chennai, Tamil Nadu, India'> ;;> esac> |
>
>
Lähtö
$bash -f main.sh Headquarters - Chennai, Tamil Nadu, India.>
Huomautus: Shell-skripti on isot ja pienet kirjaimet huomioiva kieli, mikä tarkoittaa, että skriptejä kirjoitettaessa on noudatettava oikeaa syntaksia.
gimp vienti jpg-muodossa