Řídicí konstrukce větvení

Stránky: E-learning VŠCHT Praha
Kurz: Linux, shell
Kniha: Řídicí konstrukce větvení
Vytiskl(a): Nepřihlášený host
Datum: čtvrtek, 4. července 2024, 10.25

1. Řídicí konstrukce case

Popis

Konstrukce case slouží pro větvení programu. Definovaný výčet různých vzorů se porovnává s obsahem definované proměnné var. Při shodě vzoru s obsahem proměnné se vykonají příkazy přiřazené danému vzoru. Při první nalezené shodě se další vzory neuvažují. Konstrukce case končí klíčovým slovem esac.

Ve vzorech je možné používat symboly a operátory jako pro expansi cesty. Vzory je možné kombinovat logickým operátorem |. Každý vzor je ukončen symbolem ). Výčet příkazů přiřazených vzoru je zakončen symbolem ;;.

Ukázka možných vzorů

Vzor
Význam
c)
samostatný znak
c|C)
samostatný znak (např. case-insensitive volba)
[[:digit:]])
znaky dané znakovou třídou
[ABC])
znaky dané výčtem
[0-9])
znaky dané rozsahem
???)
konkrétní počet libovolných znaků
*.txt)
libovolný počet libovolných znaků s blíže specifikovanou částí řetězce
*)
libovolná hodnota

Syntaxe

case var in

vzor [| vzor]...) příkazy ;;

esac

Příklad



2. Řídicí konstrukce select

Popis

Konstrukce select poskytuje cyklickou nabídku volby číselné hodnoty, která je indexem položky definovaného listu hodnot.

Na základě zvolené číselné hodnoty konstrukce přiřadí proměnné var příslušnou hodnotu z listu a pro takto zvolenou proměnnou vykoná dále uvedené příkazy. V případě volby číselné hodnoty mimo rozsah indexu ponechá proměnnou var prázdnou. Konstrukce je zakončena klíčovým slovem done. Cyklus volby se stále opakuje, dokud není přerušen uživatelem (Ctrl + d) nebo pomocí příkazu break uvedeného v těle konstrukce.

Syntaxe

select var in list; do

příkazy

[break]

done

Příklad