Pętla while i until w BASH-u

Stronę tą wyświetlono już: 229 razy

Konstrukcja pętli while w BASH-u

Pętla while wykonuje się dopóki podany warunek będzie spełniony, oto przykład użycia tejże pętli:

Listing 1
  1. DAY=0
  2. while [ "$DAY" -lt 1 ] || [ "$DAY" -gt 7 ]
  3. do
  4. echo "Podaj numer dnia tygodnia: ";
  5. read DAY
  6. case $DAY in
  7. 1)
  8. echo "poniedziałek";;
  9. 2)
  10. echo "wtorek";;
  11. 3)
  12. echo "środa";;
  13. 4)
  14. echo "czwartek";;
  15. 5)
  16. echo "piątek";;
  17. 6)
  18. echo "sobota";;
  19. 7)
  20. echo "niedziela";;
  21. *)
  22. echo "niepoprawna wartość";;
  23. esac
  24. done

Przykład wykonania powyższego kodu:

Podaj numer dnia tygodnia:
9
niepoprawna wartość
Podaj numer dnia tygodnia:
0
niepoprawna wartość
Podaj numer dnia tygodnia:
1
poniedziałek

Konstrukcja pętli until w BASH-u

Pętla until wykonuje się do momentu spełnienia podanego warunku. Oto przykład jej użycia:

Listing 2
  1. DAY=0
  2. until [ "$DAY" -gt 0 ] && [ "$DAY" -lt 8 ]
  3. do
  4. echo "Podaj numer dnia tygodnia: ";
  5. read DAY
  6. case $DAY in
  7. 1)
  8. echo "poniedziałek";;
  9. 2)
  10. echo "wtorek";;
  11. 3)
  12. echo "środa";;
  13. 4)
  14. echo "czwartek";;
  15. 5)
  16. echo "piątek";;
  17. 6)
  18. echo "sobota";;
  19. 7)
  20. echo "niedziela";;
  21. *)
  22. echo "niepoprawna wartość";;
  23. esac
  24. done

Przerywanie działania pętli

Za pomocą break można w dowolnym miejscu pętli przerwać jej działanie, natomiast za pomocą continue przerwać wykonywanie kodu bieżącego bloku instrukcji i przejść do następnego wykonania pętli.

Komentarze