W programowaniu BASH instrukcja przypadku pomaga uprościć złożone warunki, gdy istnieje wiele różnych opcji. Zamiast używać zagnieżdżonych instrukcji, możemy zamiast tego użyć instrukcji sprawy, aby kod bash był bardziej czytelny i możliwy do utrzymania.
Instrukcja Bash Case podziela podobieństwa do instrukcji JavaScript i C. Jednak główną różnicą jest to, że po dopasowaniu wzoru nie szuka żadnego dodatkowego dopasowania wzoru.
Niniejszy przewodnik obejmie podstawy oświadczenia o sprawach Bash z różnymi przykładami.
Oświadczenie o przypadku bash
Podstawowa struktura oświadczenia sprawy jest następująca.
sprawaW )
sprawozdania
;;)
sprawozdania
;;
*)
sprawozdania
;;
esac
Oto krótki podział struktury:
Zrozumienie stwierdzenia Bash IF-Else jest korzystne w zrozumieniu i opanowaniu stwierdzenia sprawy Bash.
Przykłady oświadczenia o przypadku bash
Instrukcja przypadku przy użyciu wartości liczbowych
Teraz, gdy znamy podstawy, czas sprawdzić to w akcji. Spójrz na następujący skrypt.
#!/bin/bash
echo -n „Wprowadź wartość:”
czytaj wartość
sprawa $ wartość w
1)
echo „One” ;;
2)
echo „Two” ;;
3)
echo „trzy” ;;
4 | 5)
echo „większe niż trzy” ;;
*)
echo „nieznana wartość” ;;
esac
Zapisz skrypt. Oznacz go jako wykonywalną.
$ chmod +x próbka.cii
Teraz uruchom skrypt.
$ ./próbka.cii
Skrypt poprosi o wprowadzenie wartości. Jeśli wartość pasuje do któregokolwiek z wzorców, wykonuje klauzulę pasującą. Jeśli nie znaleziono żadnego meczu, to będzie zgodne z domyślną klauzulą.
Instrukcja sprawy za pomocą ciągów
W następnym przykładzie użyjemy ciągów do dopasowania wartości.
#!/bin/bash
echo -n „Wprowadź planet:”
Przeczytaj planetę
sprawa $ planeta w
Merkury | Wenus | Ziemia | Mars | Jowisz | Saturn | Uran | Neptun)
Echo „$ Planet to planeta z Układu Słonecznego”
;;
Pluton)
Echo „$ Planet to planeta krasnoludna”
;;
„Planet Nine”)
echo „$ Planet jeszcze nie odkryta”
;;
*)
echo „nie z układu słonecznego”
;;
esac
Skrypt będzie działał jak pierwszy przykład. Poprosi o nazwę planet, sprawdź, czy wejście pasuje do jakiejkolwiek klauzuli i wykonuje klauzulę pasującą.
Jeśli dokładnie zbadałeś, zauważysz, że „Planet Nine” jest jedyną wartością zapakowaną w cytaty. To dlatego, że jest w tym miejsce. Korzystając z cytatów, mówimy powłoki, aby traktował ją jako część jednego wzoru.
Wrażliwość na przypadek w przypadku stwierdzenia
Zauważ, że w ostatnim przykładzie wejście jest wrażliwe na wielkość liter. To jest domyślne zachowanie Bash. Możemy jednak powiedzieć Shellowi, aby uruchomił skrypt w trybie bezsensownym.
Aby to zrobić, dodaj następujący wiersz na początku skryptu.
$ shopt -s nocasematch
Skrypt powinien wyglądać tak.
Teraz sprawdź skrypt. Wprowadź wartość z inną sprawą.
$ ./próbka.cii
Końcowa myśl
Niniejszy przewodnik obejmuje podstawy stwierdzeń spraw Bash. Pokazuje także, jak je wdrożyć w skryptach Bash. Powinieneś czuć się komfortowo przy użyciu instrukcji Case. Instrukcje przypadków bash są często używane do przekazywania parametrów do skorupy skorupowych z wiersza poleceń. Na przykład scenariusze inicjów używają instrukcji przypadków, aby uruchomić, zatrzymać i ponownie uruchomić usługi. Po przeczytaniu tego przewodnika będziesz mógł wdrożyć instrukcję BASH Case w swoich skryptach.
Szczęśliwy komputer!