Bash: Če, sicer Če, drugi primeri

Bash If Else If Else Examples



Basove pogojne izjave so tiste, ki nam omogočajo, da ukrepamo glede na različne pogoje. Ti stavki izvajajo bloke kode glede na to, ali je pogoj, ki ga je določil programer, ocenjen na true ali false. Če oceni kot true, izvede določen blok kode, sicer se premakne na naslednji pogoj.

V Bashu obstajajo različne vrste pogojnih stavkov:







  1. if izjava
  2. izjava if-else
  3. if..elif..else izjava
  4. Ugnezdeno

V tem članku se bomo naučili eno od pogojnih stavkov, ki je if, elseif, else skupaj z nekaj primeri. V več drugih jezikih je elif zapisan kot elseif ali pa če. Izjava elif nam pomaga pri odločanju med različnimi odločitvami.



Sintaksa if, elseif, else je:



če <test_expression>;potem
<ukaz za izvajanje>
elif <test_expression>;potem
<ukaz za izvajanje>
drugače
<ukaz za izvajanje>
biti

Ključni besedi if sledi pogoj, ki ga želite preveriti. V tej pogojni izjavi if-else-if so izrazi ovrednoteni od zgoraj navzdol.





  • Temu sledi potem ključna beseda.
  • Po tem, če je izraz ovrednoten na true, se izvedejo ustrezni stavki. Če izraze ovrednotimo na false, se izvede ustrezen stavek znotraj elifa.
  • Če noben od pogojev ne drži, se izvede stavek znotraj blokiranega else.

Primer 1

Elif (else if) se uporablja za več pogojev if. Če je prvi pogoj napačen, preverite drugega, če so pogoji. V naslednjem primeru jemljemo podatke od uporabnika in prikažemo ustrezne stavke.

  • Uporabite, če je pogoj za preverjanje, ali so oznake večje ali enake 80. Če je pogoj resničen, bo z ukazom echo pod blokom nato natisnil odlično.
  • Če je prvi pogoj neveljaven, bo nato uporabil pogoj elif, da preveri, ali so oznake večje ali enake 70, če je to res, bo natisnil Dobro.
  • Če noben od zgornjih pogojev ne ustreza resničnosti, se premakne v drug pogoj in natisne Zadovoljivo.
prebrati -str 'Vnesite oznake:'oznake
če [ $ mark -daj 80 ]
potem
vrgel ven 'Odlično'

elif [ $ mark -daj 60 ]
potem
vrgel ven 'Dobro'

drugače
vrgel ven 'Zadovoljivo'
biti

Primer 2:

Na primer, želimo dokumentirati ocene za določen tečaj. Skupne ocene so 200 s 100 ocenami za kvize in 100 za naloge. Prikazati želimo vsoto nalog in kvizov, pri tem pa paziti, da skupno število ne preseže 200.



  1. Vzemite vnos: quiz_marks in assignments_marks
  2. Prepričajte se, da noben od obeh vhodov ne presega največjih možnih oznak za vsakega od njih, tj. 100 z uporabo pogojev if in elif.
  3. Če kateri koli od vnesenih kvizov_znakov ali oznak dodelitev presega 100, prikažete opozorilo z ukazom echo.
  • Prosimo, preverite vnosne oznake za kviz
  • Prosimo, preverite vnosne oznake za dodelitve
  1. Če se noben od zgornjih pogojev ne ujema, to pomeni, da nobena od oznak ne presega 100, se pomaknite na drug pogoj in z ukazom echo prikažete vsoto oznak.
#!/bin/bash
prebrati -str 'Vnesite oznake teorije:'kviz_znaki
prebrati -str 'Vnesite praktične oznake:'assignments_marks
če (($ quiz_marks > petdeset));
potem
vrgel ven 'Prosimo, preverite vnosne oznake za kviz.'
elif (($ assignments_marks > petdeset));
potem
vrgel ven 'Preverite vnosne oznake za dodelitve.'
drugače
vrgel ven 'Vaše skupne ocene: vsota =$ ((kviz_znaki + oznake dodelitev)) '
biti

Primer 3:

Vzemimo še en primer programa za bančni račun, v katerem želimo imeti tri ločene rezultate za 3 različne situacije:

  • Stanje je manjše od nič
  • Ravnotežje je nič
  • Ravnotežje je nad ničlo

Na primer, v naslednjem programu uporabite stavke if, elif, else za prikaz različnih izhodov v različnih scenarijih:

  1. Uporabite pogoj if, da preverite, ali je stanje manjše od nič. Če je ta pogoj resničen, prikažite sporočilo z ukazom echo: Stanje je manjše od nič. Dodajte več sredstev, sicer vam bomo zaračunali kazen.
  2. Če se zgornji pogoj ne ujema, uporabite pogoj elif, da preverite, ali je stanje enako nič. Če je vrednost resnična, se prikaže sporočilo: Stanje je nič, dodajte sredstva
  3. Če se noben od zgornjih pogojev ne ujema, uporabite drugi pogoj za prikaz: Vaše stanje je nad ničlo.
#!/bin/bash
Ravnovesje=900
če ((Ravnovesje< 0));potem
vrgel ven 'Stanje je manjše od nič. Dodajte več sredstev, sicer vam bomo zaračunali kazen'
elif ((Stanje ==0));potem
vrgel ven 'Stanje je nič, dodajte sredstva'
drugače
vrgel ven 'Vaše stanje je nad ničlo.'
biti

Iz zgornjih primerov pogojnega stavka, če bi, elif, drugače, zdaj morali razumeti, kako ta pogojni stavek deluje in kje ga je mogoče uporabiti v različnih scenarijih. Upam, da vam je bil članek všeč.