Kako koristiti izjavu slučaja Bash

How Use Bash Case Statement



Bash case izrazi slični su if-else izjavama, ali su lakši i jednostavniji. Pomaže uskladiti jednu varijablu s nekoliko vrijednosti. Koristi se kada trebate IF-else izraze s brojnim Elif izrazima ... Vrlo je slično prebacivanju izraza u C, ali izraz bash slučaja se ne pomiče naprijed nakon što se uzorak podudara

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:
slučaj $ varijabla u
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.sh

Da 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 -snocasematch

izbaciti '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/bash
trgovine -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.