6.2. Rozgałęzianie kodu w instrukcjach warunkowych

Problem

Chcemy sprawdzić, czy do skryptu została przekazana właściwa liczba parametrów. W zależności od wyniku testu skrypt powinien podjąć określone działania. Niezbędna jest konstrukcja programistyczna umożliwiająca rozgałęzianie kodu.

Rozwiązanie

Powłoka bash oddaje do dyspozycji programisty instrukcję if, której składnia jest zbliżona do składni instrukcji warunkowych innych języków programowania.

if [ $# -lt 3 ]
then
    printf "%b" "Błąd. Niedostateczna liczba parametrów.\n"
    printf "%b" "użycie: mójskrypt plik1 op plik2\n"
    exit 1
fi

Rozwiązanie alternatywne:

if (( $# < 3 ))
then
    printf "%b" "Błąd. Niedostateczna liczba parametrów.\n"
    printf "%b" "użycie: mójskrypt plik1 op plik2\n"
    exit 1
fi

Poniżej ...

Get Bash. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.