Hogyan kell használni a Bash -ügy utasítását

How Use Bash Case Statement



A Bash-esetek állításai hasonlóak az if-else állításokhoz, de könnyebbek és egyszerűbbek. Segít egy változót párosítani több értékkel. Akkor használják, ha az IF-else utasításokat számos Elif utasítással kell megadni ... Teljesen hasonlít a C utasításhoz, de a bash case utasítás nem halad előre, ha a minta illeszkedik

Ebben a cikkben elmagyarázzuk, hogyan kell használni a Bash -eset utasítását példával a Linux operációs rendszerben.





A bash case utasítás szintaxisa

Íme a bash case utasítás szintaxisa:



Szintaxis:



ügy $ változó ban ben
minta-1)
parancsokat
;;
minta-2)
parancsokat
;;
minta-3)
parancsokat
;;
minta-N)
parancsokat
;;
*)
parancsokat
;;
esac
  • Az esetkifejezés kisbetűvel kezdődik, és esac -val végződik
  • A) a minta befejezésére szolgál. Több minta elkülönítéséhez | operátort az alábbiak szerint használjuk:
ügy $ változó ban ben
minta-1|minta-2)
parancsokat
....
....
;;
minta-3|minta-4)
parancsokat
....
....
;;
  • A parancsokkal ellátott mintát záradéknak nevezzük, és minden záradék (;;) -vel végződik.
  • A csillag szimbólum* használható az alapértelmezett kisbetű meghatározására.
  • A Bash case utasítás először a bemeneti $ változót illeszti a különböző mintákhoz. Ha egy minta illeszkedik, akkor a megfelelő parancskészlet a kettős pontosvesszőig (;;) kerül végrehajtásra.

1. példa:

A következő példa a bash készpénz -kimutatásról szól, amelyben felkéri a felhasználót, hogy írja be a hónap nevét. Ha ez a bemenet megfelel a szkriptben megadott mintáknak, akkor a megfelelő echo parancs végrehajtásra kerül. Az echo parancs az adott hónap nemzetközi eseményére vonatkozó információkat jeleníti meg.





A szkript használatához hozzon létre egy egyszerű szövegfájlt; nevezze el .sh fájlkiterjesztéssel. Adja hozzá a következő szkriptet, és mentse el. Ezután rendelje hozzá ezt a fájlt az engedélyek végrehajtásához a következő parancs futtatásával a terminálon:

$sudo chmod 777fájlnév.sh

A bash fájl végrehajtásához egyszerűen futtassa ./, majd a bash fájl nevét az alábbiak szerint:



$./fájlnév.sh

A szkript végrehajtásakor a rendszer kéri, hogy adja meg a hónap nevét. Ha a hónap neve megegyezik, akkor az adott hónap megfelelő eseményét jeleníti meg, ellenkező esetben nem található megfelelő információ.

Ne feledje, hogy a shopt -s nocasematch a minta illesztésére szolgál, függetlenül a kis- és nagybetűitől.

üzletek -snocasematch

kidobta 'Írja be a hónap nevét'
olvashónap
ügy $ hónap ban ben
január)
kidobta „Január 24., az oktatás nemzetközi napja.”
;;
február)
kidobta 'Február 20. A társadalmi igazságosság világnapja.'
;;
március)
kidobta 'Március 8. a nemzetközi nőnap.'
;;
április)
kidobta Április 7 -e, az egészség világnapja
;;
Lehet)
kidobta 'Május 15 -én a családok nemzetközi napja'
;;
június)
kidobta „Június 20. a menekültek világnapja”
;;
július)
kidobta 'Július 11. a népesség világnapja'
;;
*)
kidobta 'Nem található megfelelő információ'
;;
esac

2. példa:

A következő példa a bash készpénz -kimutatásról szól, amelyben a felhasználónak meg kell adnia az ország nevét. Ha ez a bemenet megfelel a szkriptben megadott mintáknak, akkor a megfelelő echo parancs végrehajtásra kerül. Az echo parancs információkat jelenít meg az adott ország fővárosáról.

A szkript használatához kövesse a fenti példában leírt módszert. Ha elkészült, hajtsa végre a szkriptet, és meg kell adnia az ország nevét bemenetként. Ha az országnév illeszkedik az előre meghatározott országnevekhez, akkor az adott ország fővárosának neve jelenik meg, ellenkező esetben az Információ nem érhető el üzenet jelenik meg.

#!/bin/bash
üzletek -snocasematch
kidobta -n 'Írja be az ország nevét:'
olvasország

kidobta -n 'Fővárosa$ országvan '
ügy $ ország ban ben
Pakisztán)
kidobta -n 'Iszlámábád'
;;
Fidzsi -szigetek)
kidobta -n 'Száraz'
;;
Egyesült Királyság| 'Egyesült Királyság')
kidobta -n 'London'
;;
pulyka)
kidobta -n 'Ankara'
;;
HASZNÁLAT)
kidobta -n 'Washington DC'
;;
*)
kidobta -n 'Az információ nem áll rendelkezésre'
;;
esac
kidobta ''

A Bash-esetek állításai megkönnyítik a bash-script olvasását és megértését. Ebben a cikkben megvizsgáltuk, hogyan kell írni és használni a bash eset utasításokat. Mostantól könnyedén és egyszerűen írhat többszintű if-else utasítást az esetmegállapítások használatával.