switch(1)
On 9 ledna, 2022 by adminNázev
switch – podmíněné provedení bloku příkazů
Synopse
switch VALUE; ; ; …] end
Popis
Příkaz switch slouží k provedení jednoho z několika bloků příkazů v závislosti na tom, zda se zadaná hodnota rovná jedné z několika zástupných hodnot. Příkaz case se používá společně s příkazem switch k určení, který blok má být proveden.
Každý příkaz case má zadán jeden nebo více parametrů. Vyhodnotí se první příkaz case s parametrem, který odpovídá řetězci zadanému v příkazu switch. parametry příkazu case mohou obsahovat zástupné znaky. Ty je třeba escapovat nebo uvést v uvozovkách, aby se zabránilo regulárnímu rozšiřování zástupných znaků pomocí názvů souborů.
Všimněte si, že fish nepropadá na příkazy case. Ačkoli syntaxe může vypadat trochu jako příkazy C switch, chová se spíše jako příkazy case tradičních shellů.
Také si všimněte, že substituce příkazů v příkazu case se vyhodnotí, i když jeho tělo není převzato. To se může zdát na první pohled neintuitivní, ale je to nevyhnutelné, protože by nebylo možné zjistit, zda se příkaz case vyhodnotí jako pravdivý dříve, než by byly provedeny všechny formy expanze parametrů příkazu case.
Příklad
Pokud proměnná $animal obsahuje jméno zvířete, následující kód by se pokusil o jeho klasifikaci:
switch $animal case cat echo evil case wolf dog human moose dolphin whale echo mammal case duck goose albatross echo bird case shark trout stingray echo fish case '*' echo I have no idea what a $animal isend
Pokud by byl výše uvedený kód spuštěn s $animal nastaveným na velrybu, výstupem by byl savec.
Napsat komentář