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