Bash: Hvis, annet hvis, andre eksempler

Bash If Else If Else Examples



Bash betingede utsagn er de som lar oss iverksette tiltak mot ulike forhold. Disse utsagnene implementerer kodeblokker, basert på om tilstanden spesifisert av programmereren evaluerer til sann eller usann. Hvis det evalueres til sant, utfører en bestemt kodeblokk ellers går du til neste betingelse.

Det er forskjellige typer betingede utsagn i Bash:







  1. hvis uttalelse
  2. if-else-uttalelse
  3. if..elif..else uttalelse
  4. Hekket

I denne artikkelen vil vi lære en av de betingede utsagnene som er hvis ellers, sammen med få eksempler. På flere andre språk er elivet skrevet som elseif eller annet if. Elif -setningen hjelper oss å ta avgjørelser blant forskjellige valg.



Syntaksen til if, elseif, else er:



hvis <test_expression>;deretter
<kommando for å utføre>
elif <test_expression>;deretter
<kommando for å utføre>
ellers
<kommando for å utføre>
være

Søkeordet if blir fulgt av tilstanden du vil kontrollere. I denne if-else-if betingede setningen evalueres uttrykkene fra topp til bunn.





  • Dette etterfølges av deretter søkeord.
  • Etter det, hvis et uttrykk er evaluert til sant, blir tilsvarende utsagn utført. Hvis uttrykkene blir vurdert til usanne, vil den tilsvarende setningen inne i elifet bli utført.
  • Hvis ingen av betingelsene er sanne, blir setningen inne i det andre blokkerte utført.

Eksempel 1

Elifet (ellers hvis) brukes til flere if -betingelser. Hvis den første tilstanden går galt, sjekk en annen hvis betingelser. I det følgende eksemplet tar vi innspill fra brukeren og viser tilsvarende utsagn.

  • Bruk if -betingelsen for å kontrollere om merkene er større eller lik 80. Hvis tilstanden evalueres til sann, vil den skrive ut Utmerket ved hjelp av ekkokommandoen under deretter blokkering.
  • Hvis den første tilstanden evalueres til falsk, vil den deretter bruke elif -tilstanden til å sjekke om merker er større eller lik 70. Hvis denne evalueres til sann, vil den skrive ut God.
  • Hvis ingen av de ovennevnte betingelsene evalueres til sanne, vil den gå til den andre tilstanden og skrive ut tilfredsstillende.
lese -s 'Skriv inn merker:'merker
hvis [ $ merker -gi 80 ]
deretter
kastet ut 'Utmerket'

elif [ $ merker -gi 60 ]
deretter
kastet ut 'God'

ellers
kastet ut 'Tilfredsstillende'
være

Eksempel 2:

For eksempel vil vi dokumentere karakterene for et bestemt emne. Totalsummen er 200 med 100 poeng for quizer og 100 for oppgaver. Vi ønsker å vise summen av oppgaver og spørrekonkurranser samtidig som vi sørger for at det totale antallet ikke overstiger 200.



  1. Ta innspillet: quiz_marks og assignments_marks
  2. Sørg for at ingen av de to inngangene overskrider de maksimalt mulige merkene for hver av dem, dvs. 100 ved å bruke if og elif -betingelsene.
  3. Hvis en av input quiz_marks eller assignments_marks overstiger 100, må du vise en advarsel med ekkokommando.
  • Vennligst sjekk inndatamerkene for quiz
  • Sjekk inndatamerkene for oppgaver
  1. Hvis ingen av betingelsene ovenfor samsvarer, dvs. ingen av merkene overstiger 100, går du til den andre tilstanden og viser summen av merker ved å bruke ekkokommandoen.
#!/bin/bash
lese -s 'Skriv inn teorimerke:'quiz_marks
lese -s 'Skriv inn praktiske merker:'oppgaver_merker
hvis (($ quiz_marks > femti));
deretter
kastet ut 'Vennligst sjekk inndatamerkene for quiz.'
elif (($ assignments_marks > femti));
deretter
kastet ut 'Vennligst sjekk inndatamerkene for oppgaver.'
ellers
kastet ut 'Dine totale karakterer: sum =$ ((quiz_marks + assignments_marks)) '
være

Eksempel 3:

La oss ta et annet eksempel på et bankkontoprogram der vi ønsker å ha tre separate utdata for tre forskjellige situasjoner:

  • Balansen er mindre enn null
  • Balansen er null
  • Balansen er over null

For eksempel, i følgende program, bruk if, elif, else -setningene for å vise forskjellige utganger i forskjellige scenarier:

  1. Bruk if -tilstanden for å kontrollere om saldoen er mindre enn null. Hvis denne tilstanden evalueres til sann, kan du vise meldingen ved hjelp av ekkokommandoen: Balansen er mindre enn null. Legg til flere midler, ellers vil du bli belastet straff.
  2. Hvis betingelsen ovenfor ikke stemmer overens, kan du bruke elif -betingelsen til å kontrollere om balansen er lik null. Hvis den er sann, viser du meldingen: Saldo er null. Legg til midler
  3. Hvis ingen av de ovennevnte betingelsene samsvarer, bruker du betingelsen else til å vise: Balansen din er over null.
#!/bin/bash
Balansere=900
hvis ((Balansere< 0));deretter
kastet ut 'Saldo er mindre enn null. Legg til flere midler, ellers vil du bli belastet straffen'
elif ((Balanse ==0));deretter
kastet ut 'Balansen er null, vennligst legg til midler'
ellers
kastet ut 'Balansen din er over null.'
være

Fra de ovennevnte eksemplene på betinget utsagn hvis du ellers burde nå kunne forstå hvordan denne betingede setningen fungerer og hvor den kan brukes i forskjellige scenarier. Jeg håper du likte artikkelen.