Kā izmantot Bash lietas paziņojumu

How Use Bash Case Statement



Bash lietu paziņojumi ir līdzīgi paziņojumiem if-else, bet ir vieglāk un vienkāršāk. Tas palīdz saskaņot vienu mainīgo ar vairākām vērtībām. To izmanto, ja jums ir nepieciešami IF-else priekšraksti ar vairākiem Elif paziņojumiem ... Tas ir diezgan līdzīgi kā slēdzis C, taču bash case paziņojums nevirzās uz priekšu, kad modelis ir saskaņots

Šajā rakstā mēs izskaidrosim, kā izmantot Bash lietas paziņojumu ar piemēru Linux OS.







Bash gadījuma paziņojuma sintakse

Šeit ir bash gadījuma paziņojuma sintakse:



Sintakse:



gadījumā $ mainīgais iekšā
modelis-1)
komandas
;;
modelis-2)
komandas
;;
modelis-3)
komandas
;;
modelis-N)
komandas
;;
*)
komandas
;;
esac
  • Lietas paziņojums sākas ar lietu un beidzas ar esac
  • ) Izmanto, lai izbeigtu modeli. Lai atdalītu vairākus modeļus, | operators tiek izmantots, kā parādīts zemāk:
gadījumā $ mainīgais iekšā
modelis-1|modelis-2)
komandas
....
....
;;
modelis-3|modelis-4)
komandas
....
....
;;
  • Modelis ar komandām ir pazīstams kā klauzula, un katrs punkts beidzas ar (;;).
  • Zvaigznītes simbolu* var izmantot, lai definētu noklusējuma reģistru.
  • Bash gadījuma paziņojums vispirms atbilst ievades $ mainīgajam ar dažādiem modeļiem. Ja modelis ir saskaņots, tiks izpildīts atbilstošais komandu kopums līdz dubultiem semikoliem (;;).

1. piemērs:

Šis piemērs ir par bash naudas pārskatu, kurā tas lūdz lietotājam ievadīt mēneša nosaukumu. Ja šī ievade atbilst skripta definētajiem modeļiem, tiks izpildīta atbilstošā atbalss komanda. Atbalsta komanda parādīs informāciju par konkrētā mēneša starptautisko notikumu.





Lai izmantotu šo skriptu, izveidojiet vienkāršu teksta failu; nosauciet to ar .sh faila paplašinājumu. Pievienojiet tam šādu skriptu un saglabājiet to. Pēc tam piešķiriet šim failam atļauju izpildi, terminālī palaižot šādu komandu:

$sudo chmod 777faila nosaukums.sh

Lai izpildītu šo bash failu, vienkārši palaidiet ./, kam seko bash faila nosaukums, kā norādīts tālāk.



$./faila nosaukums.sh

Izpildot skriptu, jums tiks lūgts ievadīt mēneša nosaukumu. Ja tiek saskaņots mēneša nosaukums, tas parādīs atbilstošo notikumu konkrētajā mēnesī, pretējā gadījumā netiks atrasta atbilstoša informācija.

Ņemiet vērā, ka shopt -s nocasematch tiek izmantots, lai saskaņotu modeli neatkarīgi no tā gadījuma.

veikali -snocasematch

izmest ārā 'Ievadiet mēneša nosaukumu'
lasītmēnesis
gadījumā $ mēnesī iekšā
Janvāris)
izmest ārā '24. janvāris - starptautiskā izglītības diena.'
;;
Februāris)
izmest ārā '20. februārisPasaules sociālā taisnīguma diena.'
;;
Marts)
izmest ārā '8. marts Starptautiskā sieviešu diena.'
;;
Aprīlis)
izmest ārā 'Pasaules veselības diena', 7. aprīlis
;;
Maijs)
izmest ārā Starptautiskā ģimeņu diena - 15. maijs
;;
jūnijs)
izmest ārā “Pasaules bēgļu diena”, 20. jūnijs
;;
Jūlijs)
izmest ārā 'Pasaules iedzīvotāju diena - 11. jūlijs'
;;
*)
izmest ārā 'Nav atrasta atbilstoša informācija'
;;
esac

2. piemērs:

Šis piemērs ir par skaidras naudas pārskatu, kurā lietotājam tiek lūgts ievadīt valsts nosaukumu. Ja šī ievade atbilst skripta definētajiem modeļiem, tiks izpildīta atbilstošā atbalss komanda. Atbalsta komanda parādīs informāciju par konkrētās valsts galvaspilsētu.

Lai izmantotu šo skriptu, izpildiet to pašu metodi, kas aprakstīta iepriekšējā piemērā. Kad esat pabeidzis, izpildiet skriptu, un jums tiks lūgts ievadīt valsts nosaukumu kā ievadi. Ja valsts nosaukums tiek saskaņots ar iepriekš definētiem valstu nosaukumiem, tas parādīs šīs valsts galvaspilsētas nosaukumu, pretējā gadījumā tiks parādīts ziņojums Informācija nav pieejama.

#!/bin/bash
veikali -snocasematch
izmest ārā -n 'Ievadiet valsts nosaukumu:'
lasītvalsti

izmest ārā -n 'Galvaspilsēta$ valstsir '
gadījumā $ valsts iekšā
Pakistāna)
izmest ārā -n 'Islamabad'
;;
Fidži)
izmest ārā -n 'Sauss'
;;
Lielbritānija| 'Apvienotā Karaliste')
izmest ārā -n 'Londona'
;;
Turcija)
izmest ārā -n 'Ankara'
;;
LIETOŠANA)
izmest ārā -n 'Vašingtona DC'
;;
*)
izmest ārā -n 'Informācija nav pieejama'
;;
esac
izmest ārā ''

Bash lietu paziņojumi padara bash skriptu vieglāk lasāmu un saprotamu. Šajā rakstā mēs apskatījām, kā rakstīt un izmantot bash gadījumu paziņojumus. Tagad jūs varat viegli un vienkārši uzrakstīt daudzlīmeņu if-else paziņojumu, izmantojot gadījumu.