Funtzio bat komando multzo bat da, izen batez antzematen duena.Horrela esanda, sript baten antzekoa izango litzateke esan liteke, baina zenbait alde badaude; adibidez, script batean funtzioak exekuta daitezke script-ari dagokion tarte memorian aldagiak bailitzan.
Funtzio bat definitzeko bi era daude, biak baliokikeak direla.
edo -----------------------------------------------------------
Memorian zenbat funtzio dauzkagu jakiteko exekuta daiteke hurrengo komando hau declare -F. ( declare -f komandoak funtzioen inplementazioak ematen digu)
Bestalde, unset -f funtzio_izena egikarituz adierazitako funtzioa memoriatik ezabatzen da.
Gerta liteke izen bera duen script eta funtzioa existitzea ,zein izango zen lehenengoa exekutatzean arazoa sortuz.Bada, ez dago arazorik : kasu hauetan funtzioak lehentasuna du .
Ikus dezagun adibide bat: testu editore bat erailiz , kopiatu hurrengo testu hau:
#!bin/bash
# scrpit-aren izena agurra.sh
clear
echo " eginAgurra() funtzioa erabiliz agurtzen zaitut"
eginAgurra(){
echo " Kaixo $1 laguna"
echo "-----------------------------------------------"
}
eginAgurra #lerro honetan funtzioa exekutatzen da!!!
echo "Agur!!!"
Gorde agurra.sh izenarekin , ta betiko moduan x-baimena jarri exekutatu ahal izateko.Konprobatzeko script-a egikaritu , hurrengo hau idatziz: agurra.sh Pablo
Funtzio bat definitzeko bi era daude, biak baliokikeak direla.
function funtzio_izena{
...
bash komandoak
...
}
...
bash komandoak
...
}
edo -----------------------------------------------------------
funtzio_izena(){
...
bash komandoak
...
}
Funtzioak definitzean inguru-aldagaiak bezala memorian biltzen dira, eta exekutatzeko funtzioaren izena komando lerroan idatzi baino ez da egin behar, dagozkion argumentuekin baldin baditu, jaikna.bash komandoak
...
}
Memorian zenbat funtzio dauzkagu jakiteko exekuta daiteke hurrengo komando hau declare -F. ( declare -f komandoak funtzioen inplementazioak ematen digu)
Bestalde, unset -f funtzio_izena egikarituz adierazitako funtzioa memoriatik ezabatzen da.
Gerta liteke izen bera duen script eta funtzioa existitzea ,zein izango zen lehenengoa exekutatzean arazoa sortuz.Bada, ez dago arazorik : kasu hauetan funtzioak lehentasuna du .
Ikus dezagun adibide bat: testu editore bat erailiz , kopiatu hurrengo testu hau:
#!bin/bash
# scrpit-aren izena agurra.sh
clear
echo " eginAgurra() funtzioa erabiliz agurtzen zaitut"
eginAgurra(){
echo " Kaixo $1 laguna"
echo "-----------------------------------------------"
}
eginAgurra #lerro honetan funtzioa exekutatzen da!!!
echo "Agur!!!"
Gorde agurra.sh izenarekin , ta betiko moduan x-baimena jarri exekutatu ahal izateko.Konprobatzeko script-a egikaritu , hurrengo hau idatziz: agurra.sh Pablo
No hay comentarios:
Publicar un comentario