Opanowanie przepływu kontroli bashu z pęknięciem i kontynuuj

Opanowanie przepływu kontroli bashu z pęknięciem i kontynuuj

Bash to potężny język skryptowy, który jest powszechnie używany do zadań automatyzacji i administracji systemu. Jedną z najważniejszych koncepcji w skryptach BASH jest przepływ kontrolny, który odnosi się do sposobu, w jaki skrypt wykonuje różne polecenia na podstawie różnych warunków. Dwa kluczowe instrukcje przepływu sterowania w BASH to pęka i kontynuują, co może pomóc kontrolować wykonywanie kodu i uczynić go bardziej wydajnym.

Co to jest przerwa i kontynuuj w Bash?

Break and Ciąg to dwa instrukcje przepływu kontroli bash, które można użyć do zmiany przepływu pętli lub instrukcji przełącznika. Pozwalają ci wyjść z pętli lub pominąć pewne iteracje na podstawie określonych warunków.

Oto krótki przegląd tego, jak przerwać i kontynuować pracę w Bash:

  • przerwa: Po użyciu instrukcji w pętli lub przełącznika, Break natychmiast wyjdzie z instrukcji pętli lub przełącznika i będzie kontynuował wykonywanie skryptu z następnego polecenia po instrukcji pętli lub przełącznika.
  • Kontynuować: Zastosowanie w pętli, kontynuuj pominięcie bieżącej iteracji i przejdzie do następnej iteracji. Innymi słowy, pozwala ci pominąć pewne iteracje na podstawie określonych warunków.
  • Zarówno Break, jak i Kontynuacja może być przydatna do poprawy wydajności skryptów Bash, ponieważ pozwalają one kontrolować wykonanie kodu i unikać niepotrzebnych iteracji.

    Używając przerwy w Bash

    Zacznijmy od patrzenia na to, jak używać przerwy w Bash. Break jest powszechnie używany w instrukcjach pętli i przełączników w celu natychmiastowego wyjścia z pętli lub instrukcji przełącznika, gdy spełniony jest określony warunek.

    Oto przykład, jak używać przerwy w pętli:

    #!/bin/bash dla i in 1… 10 do if [$ i -eq 5], a następnie złam fi echo $ Zrobiłem echo „pętla”
    12345678910111213#!/bin/bash dla i in 1… 10 do if [$ i -eq 5], a następnie złam fi echo $ idone echo „pętla”

    W tym przykładzie mamy pętlę dla iternuje wartości i od 1 do 10. Dodaliśmy jednak oświadczenie IF, które sprawdza, czy I jest równe 5. Jeśli wynosi 5, użyjemy instrukcji Break, aby natychmiast wyjść z pętli.

    Jeśli uruchomimy ten skrypt, zobaczymy następujące dane wyjściowe:

    Wyjście 1 2 3 4 Pętla zakończona 

    Jak widać, pętla tylko do 4 przed wyjściem z powodu stwierdzenia przerwy.

    Korzystanie z Kontynuuj w Bash

    Następnie spójrzmy na to, jak używać Kontynuuj w Bash. Kontynuacja jest używana w pętlach do pomijania niektórych iteracji na podstawie określonych warunków.

    Oto przykład tego, jak używać, kontynuuj w pętli:

    #!/bin/bash dla i in 1… 10 do if [$ i -eq 5], a następnie kontynuuj fi echo $ Zrobiłem echo „pętla kompletna”
    12345678910111213#!/bin/bash dla i in 1… 10 do if [$ i -eq 5], a następnie kontynuuj echo $ idone echo „pętla”

    W tym przykładzie mamy pętlę dla iternuje wartości i od 1 do 10. Dodaliśmy jednak oświadczenie IF, które sprawdza, czy I jest równe 5. Jeśli wynosi 5, użyjemy instrukcji Kontynuuj, aby pominąć tę iterację i przejdź do następnej iteracji.

    Jeśli uruchomimy ten skrypt, zobaczymy następujące dane wyjściowe:

    Wyjście 1 2 3 4 6 7 8 9 10 Pętla zakończona 

    Jak widać, pętla pominęła iterację, w której „ja” był równy 5 i kontynuował wraz z resztą iteracji.

    Korzystanie z Break i kontynuuj instrukcje przełączników

    Oprócz pętli, pęknięcie i kontynuowanie można również użyć w instrukcjach przełączników w BASH.

    Oto przykład używania przerwy w instrukcji Switch:

    #!/bin/bash case 1 $ na start) echo „Uruchamianie” ;; Stop) echo „zatrzymanie usługi” ;; restart) echo „Ustalanie usługi” ;; *) echo „nieprawidłowa opcja” przerwa ;; ESAC ECHO „Instrukcja przełącznika kompletna”
    12345678910111213141516171819202122#!/bin/bash case 1 $ na start) echo „Uruchamianie” ;; Stop) echo „zatrzymanie usługi” ;; restart) echo „Ustalanie usługi” ;; *) echo „nieprawidłowa opcja” Break ;; ESAC ECHO „Instrukcja przełączania zakończona”

    W tym przykładzie mamy instrukcję przełącznika, która sprawdzi wartość pierwszego argumentu wiersza polecenia (1 USD). Jeśli 1 USD jest równe „Start”, „Stop” lub „Restart”, wykona odpowiednie polecenie. Jeśli 1 USD nie jest równe żadnej z tych wartości, wyświetli komunikat o błędzie i użyje instrukcji Break, aby wyjść z instrukcji przełącznika.

    Jeśli uruchomimy ten skrypt z poleceniem ./myscript.SH INWALID, zobaczymy następujące dane wyjściowe:

    Wyjście Nieprawidłowa instrukcja przełącznika opcji 

    Jak widać, skrypt wyświetla komunikat o błędzie, a następnie wychodzi z instrukcji przełącznika za pomocą instrukcji Break.

    Oto przykład, jak używać, kontynuuj w instrukcji przełącznika:

    #!/bin/bash case 1 $ na start) echo „Uruchamianie” ;; Stop) echo „zatrzymanie usługi” ;; restart) echo „Ustalanie usługi” ;; *) Kontynuować ;; ESAC ECHO „Instrukcja przełącznika kompletna”
    123456789101112131415161718192021#!/bin/bash case 1 $ na start) echo „Uruchamianie” ;; Stop) echo „zatrzymanie usługi” ;; restart) echo „Ustalanie usługi” ;; *) Kontynuuj ;; ESAC ECHO „Instrukcja przełącznika kompletna”

    W tym przykładzie zmodyfikowaliśmy poprzedni skrypt, aby użyć instrukcji kontynuowania zamiast przerwy. Jeśli 1 USD nie jest równe żadnej z oczekiwanych wartości, skrypt po prostu pominie tę iterację instrukcji przełącznika i przejdzie do następnej iteracji.

    Jeśli uruchomimy ten skrypt z poleceniem ./myscript.SH INWALID, zobaczymy następujące dane wyjściowe:

    Instrukcja przełącznika wyjściowego zakończona 

    Jak widać, skrypt po prostu pominął iterację, w której 1 USD był nieprawidłowy i kontynuował wraz z resztą skryptu.

    Wniosek

    W tym samouczka. Te stwierdzenia są potężnymi narzędziami do kontrolowania wykonywania kodu i poprawy wydajności skryptów. Korzystając z Break i kontynuowanie, możesz stworzyć bardziej solidne i wydajne skrypty bash, które mogą obsługiwać różne zadania i scenariusze.