Bash: Ako, Ostalo ako, Ostali primjeri

Bash If Else If Else Examples

Basove uvjetne izjave su one koje nam omogućuju poduzimanje nekih radnji prema različitim uvjetima. Ovi izrazi implementiraju blokove koda, ovisno o tome procjenjuje li se uvjet koji je naveo programer na true ili false. Ako ima vrijednost true, izvršava određeni blok koda, u suprotnom prelazi na sljedeći uvjet.

U Bashu postoje različite vrste uvjetnih izraza:



  1. if izjava
  2. if-else izjava
  3. if..elif..else statement
  4. Ugniježđeno

U ovom ćemo članku naučiti jednu od uvjetnih izjava koja je if, elseif, else zajedno s nekoliko primjera. Na nekoliko drugih jezika elif se piše kao elseif ili inače if. Izjava elif pomaže nam u donošenju odluka među različitim izborima.



Sintaksa if, elseif, else je:



ako <test_izraz>;zatim
<naredba za izvršavanje>
elif <test_izraz>;zatim
<naredba za izvršavanje>
drugo
<naredba za izvršavanje>
biti

Nakon ključne riječi if ’slijedi uvjet koji želite provjeriti. U ovom if-else-if uvjetnom izrazu izrazi se vrednuju odozgo prema dolje.

  • Nakon toga slijedi zatim ključna riječ.
  • Nakon toga, ako se izraz ocijeni kao true, izvršavaju se odgovarajući izrazi. Ako se izrazi ocijene kao netočni, izvršit će se odgovarajuća naredba unutar elifa.
  • Ako nijedan od uvjeta nije istinit, izvršava se naredba unutar blokiranog else.

Primjer 1

Elif (else if) koristi se za više if uvjeta. U slučaju da je prvi uvjet pogrešan, provjerite drugi ako. U sljedećem primjeru uzimamo unos od korisnika i prikazujemo odgovarajuće izraze.

  • Upotrijebite if uvjet za provjeru jesu li oznake veće ili jednake 80. Ako uvjet ima vrijednost true, ispisat će se izvrsno pomoću naredbe echo ispod bloka then.
  • Ako prvi uvjet ima vrijednost false, tada će upotrijebiti elif uvjet za provjeru jesu li oznake veće ili jednake 70, a ako je to istina, ispisat će se dobro.
  • Ako nijedan od gornjih uvjeta nije istinit, premjestit će se u uvjet else i ispisati zadovoljavajuće.
čitati -str 'Unesite oznake:'oznake
ako [ $ maraka -dati 80 ]
zatim
izbaciti 'Izvrsno'

elif [ $ maraka -dati 60 ]
zatim
izbaciti 'Dobro'

drugo
izbaciti 'Zadovoljavajući'
biti

Primjer 2:

Na primjer, želimo dokumentirati ocjene za određeni tečaj. Ukupne ocjene su 200 sa 100 bodova za kvizove i 100 za zadatke. Želimo prikazati zbroj zadataka i kvizova pazeći da ukupni broj ne pređe 200.



  1. Uzmite unos: quiz_marks i assignments_marks
  2. Uvjerite se da niti jedan od dva ulaza ne prelazi najveće moguće ocjene za svaki od njih, tj. 100 koristeći uvjete if i elif.
  3. Ako bilo koji od ulaznih kviza_znaka ili oznaka dodjele prelazi 100, prikažite poruku upozorenja pomoću naredbe echo.
  • Molimo provjerite ulazne oznake za kviz
  • Molimo provjerite unosne oznake za dodjeljivanje zadataka
  1. Ako se niti jedan od gornjih uvjeta ne podudara, tj. Nijedna od oznaka ne prelazi 100, prijeđite na drugi uvjet i prikazom zbroja ocjena koristite naredbu echo.
#!/bin/bash
čitati -str 'Unesite oznake teorije:'kvizovi_znakovi
čitati -str 'Unesite praktične oznake:'Zadaci_znake
ako (($ quiz_marks > pedeset));
zatim
izbaciti 'Molimo provjerite unosne oznake za kviz.'
elif (($ assignments_marks > pedeset));
zatim
izbaciti 'Molimo provjerite unosne oznake za dodjeljivanje zadataka.'
drugo
izbaciti 'Vaše ukupne ocjene: zbroj =$ ((znakovi kviza + znakovi zadataka)) '
biti

Primjer 3:

Uzmimo još jedan primjer programa bankovnog računa u kojem želimo imati tri odvojena izlaza za 3 različite situacije:

  • Stanje je manje od nule
  • Ravnoteža je nula
  • Ravnoteža je iznad nule

Na primjer, u sljedećem programu koristite naredbe if, elif, else za prikaz različitih izlaza u različitim scenarijima:

  1. Upotrijebite ako je uvjet za provjeru je li saldo manji od nule. Ako je ovaj uvjet istinit, prikažite poruku pomoću naredbe echo: Stanje je manje od nule. Dodajte još sredstava jer će vam se naplatiti kazna.
  2. Ako se gornji uvjet ne podudara, upotrijebite elif uvjet da provjerite je li saldo jednak nuli. Ako je vrijednost istinita, prikažite poruku: Stanje je nula, dodajte sredstva
  3. Ako nijedan od gornjih uvjeta ne odgovara, upotrijebite drugi uvjet za prikaz: Vaše stanje je iznad nule.
#!/bin/bash
Ravnoteža=900
ako ((Ravnoteža< 0));zatim
izbaciti 'Saldo je manji od nule. Dodajte još sredstava jer će vam se naplatiti kazna'
elif ((Saldo ==0));zatim
izbaciti 'Saldo je nula, dodajte sredstva'
drugo
izbaciti 'Vaš je saldo iznad nule.'
biti

Iz gornjih primjera uvjetne naredbe if, elif, else, sada biste trebali moći razumjeti kako ova uvjetna izjava radi i gdje se može koristiti u različitim scenarijima. Nadam se da vam se članak svidio.