Betingede erklæringer: Det er totalt 5 betingede utsagn som kan brukes i bash-programmering
- hvis uttalelse
- if-else-uttalelse
- if..elif..else..fi-uttalelse (Else If ladder)
- if..then..else..hvis..then..fi..fi..(Nested if)
- bytte uttalelse
Beskrivelsen deres med syntaks er som følger:
hvis uttalelse
Denne blokken vil behandle hvis spesifisert tilstand er sann.
Syntaks:
if [ expression ] then statement fi>
if-else-uttalelse
Hvis den spesifiserte betingelsen ikke er sann i if-delen, vil en annen del bli utført.
Syntaks
if [ expression ] then statement1 else statement2 fi>
if..elif..else..fi-uttalelse (Else If ladder)
For å bruke flere betingelser i én if-else-blokk, brukes elif nøkkelord i skallet. Hvis uttrykk1 er sant, utfører det setning 1 og 2, og denne prosessen fortsetter. Hvis ingen av betingelsene er sanne, behandler den en annen del.
Syntaks
if [ expression1 ] then statement1 statement2 . . elif [ expression2 ] then statement3 statement4 . . else statement5 fi>
if..then..else..hvis..then..fi..fi..(Nested if)
Nested if-else-blokk kan brukes når én betingelse oppfylles, så sjekker den igjen en annen betingelse. I syntaksen, hvis uttrykk1 er usann, behandler det en annen del, og igjen vil uttrykk2 bli sjekket.
Syntaks:
if [ expression1 ] then statement1 statement2 . else if [ expression2 ] then statement3 . fi fi>
bytte uttalelse
case-setning fungerer som en switch-setning hvis spesifisert verdi samsvarer med mønsteret, vil den utføre en blokk av det spesielle mønsteret
Når et samsvar er funnet, alle de tilknyttede setningene til det doble semikolonet (;;) utføres.
En sak vil bli avsluttet når den siste kommandoen er utført.
Hvis det ikke er samsvar, er utgangsstatusen til saken null.
Syntaks:
case in Pattern 1) Statement 1;; Pattern n) Statement n;; esac>
Eksempler på programmer
Eksempel 1:
Implementeringif>uttalelse
#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> |
>
>
Produksjon
$bash -f main.sh a is not equal to b>
Eksempel 2:
Implementeringif.else>uttalelse
#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> |
>
>
Produksjon
$bash -f main.sh a is equal to b>
Eksempel 3:
Implementeringswitch>uttalelse
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> |
>
>
Produksjon
$bash -f main.sh Headquarters - Chennai, Tamil Nadu, India.>
Merk: Shell-skripting er et språk som skiller mellom store og små bokstaver, noe som betyr at riktig syntaks må følges mens du skriver skriptene.
streng til tegn