Peter Rosa wrote on 26. 2. 2019 16:36:
Ale k mojej otazke - pochopil som spravne predavanie parametrov funkciam?

Miroslav Lachman wrote on 26. 2. 2019 16:52:
Zkratka za jmeno funkce uvedes promennou, nebo textovy retezec a funkce ho 
vezme jako pozicni parametr. Echo a backtick operator je tam zbytecny.

To je spravne, jen to mirne rozvedu abys funkce mohl pouzivat se vsema vymozenostma, ktere nabizeji.

Povazuj funkci proste za novy prikaz/script - uplne stejny jako kazdy jiny prikaz/script, ktery bys normalne volal z prikazove radky.

Stejne jako externi script, i funkce se vola svym jmenem nasledovanym parametry.

Parametry se uvnitr funkce objevi, stejne jako by se objevily uvnitr scriptu, v promennych $1..$9, jejich pocet je v $#, jde s nimi delat 'shift'.

Funkci lze, stejne jako externimu scriptu, presmerovat vstupy a vystupy.

Navratova hodnota funkce, se stejne jako v pripade volani externiho scriptu, objevi $?.

Jediny vetsi rozdil mezi funkci a externim scriptem tak je v tom, ze funkce s volajicim kodem sdili promenne (i kdyz nekdy jen jednosmerne)a v tom, ze prikaz 'exit' by v pripade zavolaneho externiho scriptu ukoncilo jen ten script, kdezto pri pouziti uvntitr funkce skonci cely script, nikoliv jen kod funkce.

Az an tyhle drobnosti se ale s funkci pracuje stejne jako bys jeji kod umistil do stejnojmenneho externiho scriptu a volal ten.

Dan
--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem