Introduction to Bash Scripting 13 - The Case Statement
Spisu treści:
Instrukcje case Bash są zwykle stosowane w celu uproszczenia złożonych warunków warunkowych, gdy masz wiele różnych opcji. Użycie instrukcji case zamiast zagnieżdżonej instrukcji if sprawi, że twoje skrypty bash będą bardziej czytelne i łatwiejsze w utrzymaniu.
Instrukcja case Bash ma podobną koncepcję jak instrukcja JavaScript lub C. Główną różnicą jest to, że w przeciwieństwie do instrukcji przełączania C, instrukcja przypadku Bash nie kontynuuje wyszukiwania dopasowania wzorca po znalezieniu go i wykonaniu instrukcji powiązanych z tym wzorcem.
W tym samouczku omówimy podstawy instrukcji Bash i pokażemy, jak ich używać w skryptach powłoki.
Składnia instrukcji case
Instrukcja sprawy Bash ma następującą formę:
case EXPRESSION in PATTERN_1) STATEMENTS;; PATTERN_2) STATEMENTS;; PATTERN_N) STATEMENTS;; *) STATEMENTS;; esac
- Każda instrukcja case rozpoczyna się słowem kluczowym
casepo którym następuje wyrażenie case i słowo kluczowein. Instrukcja kończy się słowem kluczowymesacMożesz użyć wielu wzorców oddzielonych|operator. Operator)kończy listę wzorców. Wzorzec może zawierać znaki specjalne. Wzorzec i powiązane z nim polecenia są znane jako klauzula. Każda klauzula musi zostać zakończona za pomocą;;Wykonywane są polecenia odpowiadające pierwszemu wzorowi pasującemu do wyrażenia. Powszechną praktyką jest używanie symbolu gwiazdki z symbolem wieloznacznym (*) jako ostatecznego wzorca w celu zdefiniowania wielkości domyślnej. Ten wzorzec zawsze będzie pasował. Jeśli żaden wzorzec nie zostanie dopasowany, zwracany jest zero. W przeciwnym razie stanem zwrotnym jest status wyjścia wykonanych poleceń.
Przykład instrukcji przypadku
Oto przykład użycia instrukcji case w skrypcie bash, który wydrukuje oficjalny język danego kraju:
języki.sh
#!/bin/bash echo -n "Enter the name of a country: " read COUNTRY echo -n "The official language of $COUNTRY is " case $COUNTRY in Lithuania) echo -n "Lithuanian";; Romania | Moldova) echo -n "Romanian";; Italy | "San Marino" | Switzerland | "Vatican City") echo -n "Italian";; *) echo -n "unknown";; esac
Zapisz niestandardowy skrypt jako plik i uruchom go z wiersza polecenia.
bash languages.sh
Skrypt poprosi Cię o podanie kraju. Na przykład, jeśli wpiszesz „Litwa”, dopasuje pierwszy wzorzec i polecenie
echo
w tej klauzuli zostanie wykonane.
Skrypt wydrukuje następujące dane wyjściowe:
Enter the name of a country: Lithuania The official language of Lithuania is Lithuanian
Enter the name of a country: Argentina The official language of Argentina is unknown
Wniosek
Do tej pory powinieneś dobrze rozumieć, jak pisać instrukcje bash. Często są one używane do przekazywania parametrów do skryptu powłoki z wiersza poleceń. Na przykład skrypty init używają instrukcji case do uruchamiania, zatrzymywania lub ponownego uruchamiania usług.
Kobieta jest pierwsza, która przyznała się do winy w notorycznym przypadku spamu
Kobieta przyznała się do winy za pomoc spamera, którego Alan Ralsky wysłał miliony niechcianych e wiadomości e-mail.
Wzrost przychodów w Q3 w IBM, ale w przypadku oznak spowolnienia wzrostu
IBM odnotował w trzecim kwartale przychody w wysokości 25,3 miliarda USD, co stanowi wzrost o 5 procent w stosunku do roku wcześniej, chociaż sprzęt i usługi ...
Spekulacja w porównaniu z licytacją Lenovo w przypadku Positivo w Brazylii
Spekuluje się, że Lenovo złoży ofertę przejęcia na Positivo w Brazylii.







