logo

Bash Case

Tässä aiheessa keskustelemme tapauslausekkeiden perusteista ja niiden käytöstä Bash-skripteissä.

Bash-tapauslause on IF-THEN-ELSE:n yksinkertaisin muoto, jossa on monia ELIF-elementtejä. Tapauslausekkeen käyttäminen tekee bash-skriptistämme luettavamman ja helpommin ylläpidettävän. Näitä käytetään yleensä yksinkertaistamaan monimutkaisia ​​ehtoja, joissa on useita erilaisia ​​vaihtoehtoja.

Bashin tapauskäsky noudattaa samanlaista logiikkaa kuin Javascript- tai C-kytkinlauseke. Siinä on pieni ero, kuten:

  • Bash-tapauslause ottaa arvon kerran ja testaa sen useita kertoja. Se lopettaa kuvion etsimisen, kun se on löytänyt sen ja suorittanut siihen linkitetyn käskyn, mikä on melkein päinvastainen C-kytkinkäskyn tapauksessa.

Tapauslausunnon syntaksi

Bash case -lauseen syntaksi on annettu alla:

 case expression in pattern_1) statements ;; pattern_2) statements ;; pattern_3|pattern_4|pattern_5) statements ;; pattern-n) statements ;; *) statements ;; esac 

Bash-tapauslausekkeissa on joitain avainkohtia:

  • Jokainen bashin tapauslause alkaa avainsanalla 'case', jota seuraa tapauslauseke ja 'in'-avainsana. Tapauslauseke suljetaan avainsanalla 'esac'.
  • Voimme käyttää useita kuvioita erotettuina | operaattori. )-operaattori osoittaa kuvioluettelon päättymisen.
  • Lausekkeet sisältävää mallia kutsutaan lauseeksi, ja se on päätettävä kaksoispuolipisteellä (;;).
  • Asteriski-symbolia (*) käytetään viimeisenä kuviona määrittämään oletuskoko. Sitä käytetään oletustapauksena, kun sitä käytetään viimeisenä tapauksena.

Kuinka se toimii

Ensinnäkin tapauslauseke laajentaa lauseketta ja yrittää sovittaa yhteen jokaisen sisällytetyn mallin kanssa. Kun se löytää osuman, kaikki linkitetyt lauseet suoritetaan kaksoispuolipisteeseen (;;) asti. Ensimmäisen osuman jälkeen tapaus päättyy viimeisen suoritetun käskyn poistumistilaan.

Jos vastaavaa kuviota ei löydy, kotelon poistumistila on nolla. Muussa tapauksessa palautustila on suoritettujen lauseiden poistumistila.

Jos käytetään oletusarvoista tähtikuviota, se suoritetaan, jos vastaavaa kuviota ei ole.

Yritetään ymmärtää tämä mekanismi muutaman esimerkin avulla:

Esimerkki 1

Tässä esimerkissä olemme määrittäneet yksinkertaisen skenaarion tapauslausekkeen käytön osoittamiseksi.

Bash-skripti

 #!/bin/bash echo 'Do you know Java Programming?' read -p 'Yes/No? :' Answer case $Answer in Yes|yes|y|Y) echo 'That's amazing.' echo ;; No|no|N|n) echo 'It's easy. Let's start learning from javatpoint.' ;; esac 

Lähtö

Bash Case

Esimerkki 2

Tässä esimerkissä olemme määrittäneet yhdistetyn skenaarion, jossa on myös oletustapaus, jossa ei löydy aikaisempaa vastaavaa tapausta.

nykyinen päivämäärä javassa

Bash-skripti

 #!/bin/bash echo 'Which Operating System are you using?' echo 'Windows, Android, Chrome, Linux, Others?' read -p 'Type your OS Name:' OS case $OS in Windows|windows) echo 'That's common. You should try something new.' echo ;; Android|android) echo 'This is my favorite. It has lots of applications.' echo ;; Chrome|chrome) echo 'Cool!!! It's for pro users. Amazing Choice.' echo ;; Linux|linux) echo 'You might be serious about security!!' echo ;; *) echo 'Sounds interesting. I will try that.' echo ;; esac 

Lähtö

Olemme ajaneet skriptin kolmella eri tulolla, tarkista tulos alla:

Bash Case

Johtopäätös

Tässä aiheessa olemme oppineet Bash Case -lausekkeen syntaksista ja käytöstä esimerkkien avulla.