<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>BASH Programming - Introduction HOWTO: Funzioni</TITLE> <LINK HREF="Bash-Prog-Intro-HOWTO-9.html" REL=next> <LINK HREF="Bash-Prog-Intro-HOWTO-7.html" REL=previous> <LINK HREF="Bash-Prog-Intro-HOWTO.html#toc8" REL=contents> </HEAD> <BODY> <A HREF="Bash-Prog-Intro-HOWTO-9.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-7.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc8">Indice</A> <HR> <H2><A NAME="s8">8. Funzioni</A> </H2> <P> Come in quasi ogni linguaggio di programmazione, puoi utilizzare le funzioni per raggruppare porzioni di codice in modo più logico oppure praticare la divina arte della ricorsione (ricorsività, ndt). <P> Dichiarare una funzione è giusto questione di scrivere function mia_funzione { mio_codice }. <P> Chiamare una funzione è proprio come chiamare un altro programma, semplicemente scrivi il suo nome. <P> <H2><A NAME="ss8.1">8.1 Esempio di funzioni</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash function quit { exit } function hello { echo Hello! } hello quit echo foo </PRE> </CODE></BLOCKQUOTE> <P> Le righe 2-4 contengono la funzione 'quit'. Le righe 5-7 contengono la funzione 'hello'. Se non sei assolutamente sicuro di cosa faccia questo script, sei pregato di provarlo!. <P> Osserva che le funzioni non hanno bisogno di essere dichiarate in alcun ordine particolare. <P> Lanciando questo script lo noterai per la prima volta: la funzione 'hello' è chiamata, per seconda la funzione 'quit', e il programma non raggiunge mai la riga 10. <H2><A NAME="ss8.2">8.2 Esempio di funzioni con parametri</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash function quit { exit } function e { echo $1 } e Hello e World quit echo foo </PRE> </CODE></BLOCKQUOTE> <P> Questo script è praticamente identico al precedente. La differenza principale è la funzione 'e'. Tale funzione, stampa il primo argomento che riceve. Gli argomenti, nell'ambito delle funzioni, vengono trattati nella stessa maniera degli argomenti passati allo script. <HR> <A HREF="Bash-Prog-Intro-HOWTO-9.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-7.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc8">Indice</A> </BODY> </HTML>