60.3. Parametry skriptu a jejich analýza

60.3.1. Použití interního příkazu bashe getopts
60.3.2. Externí program getopt
60.3.3. Externí skript getoptx
60.3.4. Nápověda k parametrům programu

Odkazy:

Spuštěný skript má k dispozici řadu proměnných ve kterých jsou informace o parametrech a přepínačích uvedených na příkazové řádce. Jsou to zejména:

$0
Název a cesta k spuštěnému skriptu.
$1, $2, $3, …
Proměnné obsahující jednotlivé parametry tak jak jsou uvedeny na příkazovém řádku. Takto jednoduše se lze odkazovat na parametry od 1. po 9. Na další parametry se odkazujeme zápisem ${10}, ${10}, …
$*
Všechny parametry počínaje prvním, tedy $1, $2, $3, …
$@
Všechna parametry počínaje prvním. Pokud je tato proměnná použita v uvozovkách "$@", tak se expanduje na "$1" "$2" …
$#
Celkový počet parametrů, bez parametru $0

Uvedené proměnné mají uvedené hodnoty definovány jen ve skriptu mimo těla funkcí. V tělech funkcí nabývají hodnot podle parametrů předávaných funkci.

Argumenty příkazové řádky můžeme procháze jednoduchým způsobem cyklem for s vnořeným příkazem case.

for a in "$@"; do
        echo "process argument $a"
        case "$a" in
        -a)
                VOLBA_A=1
                ;; 
                
                …
        esac
done
	

Pro sofistikovanější analýzu je vhodné použít k tomu existující nástroje. Tyto jsou popsány dále. Jedná se zejména o vnitřní příkaz bashe getopts a externí program getopt.