U ovom članku ćemo objasniti kako koristiti izjavu slučaja Bash s primjerom u Linux OS -u.
Sintaksa izraza bash slučaja
Evo sintakse za izraz bash case:
Sintaksa:
slučaj $ varijabla u
uzorak-1)
naredbe
;;
uzorak-2)
naredbe
;;
uzorak-3)
naredbe
;;
uzorak-N)
naredbe
;;
*)
naredbe
;;
esac
- Iskaz slučaja počinje s case i završava s esac
- ) Se koristi za prekidanje uzorka. Za odvajanje više uzoraka, | operator se koristi kako je prikazano u nastavku:
uzorak-1|uzorak-2)
naredbe
....
....
;;
uzorak-3|uzorak-4)
naredbe
....
....
;;
- Uzorak s naredbama poznat je kao klauzula i svaka klauzula završava s (;;).
- Simbol zvjezdice* može se koristiti za definiranje zadanog slova.
- Bash case statement prvo odgovara ulaznoj $ varijabli s različitim uzorcima. Ako se uzorak podudara, tada će se izvršiti odgovarajući skup naredbi do dvostrukih točaka i zareza (;;).
Primjer 1:
Sljedeći primjer govori o bash novčanom izvodu u kojem se od korisnika traži da unese naziv mjeseca. Ako ovaj ulaz odgovara definiranim uzorcima u skripti, izvršit će se odgovarajuća naredba echo. Naredba echo prikazat će informacije o međunarodnom događaju tog određenog mjeseca.
Da biste koristili ovu skriptu, izradite jednostavnu tekstualnu datoteku; dajte mu naziv s nastavkom datoteke .sh. Dodajte sljedeću skriptu u nju i spremite je. Zatim dodijelite ovoj datoteci izvršavanje dopuštenja pokretanjem sljedeće naredbe u Terminalu:
$sudo chmod 777naziv datoteke.shDa biste izvršili ovu bash datoteku, jednostavno pokrenite ./ nakon čega slijedi naziv bash datoteke na sljedeći način:
$./naziv datoteke.sh
Kada izvršite skriptu, od vas će se tražiti da unesete naziv mjeseca kao ulaz. Ako se naziv mjeseca podudara, prikazat će se odgovarajući događaj u tom određenom mjesecu, u suprotnom neće biti prikazane odgovarajuće informacije.
Imajte na umu da se shopped -s nocasematch koristi za usklađivanje uzorka bez obzira na njegov slučaj.
trgovine -snocasematchizbaciti 'Unesite naziv mjeseca'
čitatimjesec
slučaj $ mjesec u
Siječnja)
izbaciti '24. siječnja međunarodni dan obrazovanja.'
;;
veljača)
izbaciti '20. veljače Svjetski dan socijalne pravde.'
;;
ožujak)
izbaciti '8. ožujka Međunarodni dan žena.'
;;
travanj)
izbaciti '7. travnja Svjetski dan zdravlja'
;;
svibanj)
izbaciti Međunarodni dan obitelji 15. svibnja
;;
lipanj)
izbaciti '20. lipnja Svjetski dan izbjeglica'
;;
srpanj)
izbaciti '11. srpnja Svjetski dan stanovništva'
;;
*)
izbaciti 'Nisu pronađene odgovarajuće informacije'
;;
esac
Primjer 2:
Sljedeći primjer govori o bash novčanom izvodu u kojem se od korisnika traži da unese naziv zemlje. Ako ovaj ulaz odgovara definiranim uzorcima u skripti, izvršit će se odgovarajuća naredba echo. Naredba echo prikazat će informacije o glavnom gradu te zemlje.
Da biste koristili ovu skriptu, slijedite istu metodu opisanu u gornjem primjeru. Kada završite, izvedite skriptu i od vas će se tražiti da unesete naziv zemlje kao ulaz. Ako se naziv zemlje podudara s unaprijed definiranim nazivima zemalja, prikazat će se naziv glavnog grada te države, u protivnom će se prikazati poruka Informacija nije dostupna.
#!/bin/bashtrgovine -snocasematch
izbaciti -n 'Unesite naziv zemlje:'
čitatizemlja
izbaciti -n 'Glavni grad Rusije$ zemljaje '
slučaj $ zemlja u
Pakistan)
izbaciti -n 'Islamabad'
;;
Fidži)
izbaciti -n 'Suho'
;;
UK| 'Ujedinjeno Kraljevstvo')
izbaciti -n 'London'
;;
purica)
izbaciti -n 'Ankara'
;;
KORISTI)
izbaciti -n 'Washington DC'
;;
*)
izbaciti -n 'Podaci nisu dostupni'
;;
esac
izbaciti ''
Bash case naredbe čine bash-script lakšim za čitanje i razumijevanje. U ovom smo članku obradili kako napisati i koristiti izraze bash slučaja. Sada možete lako i jednostavno napisati neku vrstu višeslojne if-else izjave upotrebom izjava slučaja.