Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

Bash: Instrukcje warunkowe

poniedziałek,

Bash: Instrukcje warunkowe

Instrukcje warunkowe w Bashu są potrzebne do sterowania przepływem skryptu na podstawie spełnienia określonych warunków.

Prosty warunek if

Składnia:

if [ warunek ]; then
    # komendy, jeśli warunek jest prawdziwy
fi

Przykład:

if [ -d $directory ]; then
    echo "Katalog istnieje."
fi

Warunek if-else

Składnia:

if [ warunek ]; then
    # komendy, jeśli warunek jest prawdziwy
else
    # komendy, jeśli warunek jest fałszywy
fi

Przykład:

if [ -f $file ]; then
    echo "Plik istnieje."
else
    echo "Plik nie istnieje."
fi

Warunek if-elif-else

Składnia:

if [ warunek1 ]; then
    # komendy dla warunku1
elif [ warunek2 ]; then
    # komendy dla warunku2
else
    # komendy, jeśli żaden z warunków nie jest spełniony
fi

Przykład:

if [ $num -gt 10 ]; then
    echo "Liczba większa niż 10."
elif [ $num -eq 10 ]; then
    echo "Liczba równa 10."
else
    echo "Liczba mniejsza niż 10."
fi

Warunki złożone

Możesz łączyć warunki przy użyciu operatorów logicznych:

  • && (AND) – wykonuje drugi warunek, jeśli pierwszy jest prawdziwy.
  • || (OR) – wykonuje drugi warunek, jeśli pierwszy jest fałszywy.

Przykład:

if [ -d $directory ] && [ -w $directory ]; then
    echo "Katalog istnieje i można do niego pisać."
fi

Uwagi

  • W Bashu do oceny warunków można używać test lub [ ].
  • Pamiętaj o zachowaniu odpowiednich odstępów wewnątrz [ ], na przykład [ $a -lt $b ], nie [ $a-lt$b ].
  • Często używa się operatorów testowania plików (jak -f dla plików, -d dla katalogów) lub operatorów porównań numerycznych/łańcuchów znaków.
  • W nowszych wersjach Bash dla warunków poleca się używanie [[ ]] zamiast [ ], ponieważ zapewnia to rozszerzoną funkcjonalność i większą elastyczność.

Artykuł: Harmonogram egzaminów maturalnych

Harmonogram egzaminów maturalnych

Artykuł: Staże w Hiszpanii

Staże w Hiszpanii

Artykuł: Conformité Européenne

Conformité Européenne

Artykuł: Display Stream Compression

Display Stream Compression

Artykuł: High Dynamic Range

High Dynamic Range

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły