<!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: Condizionali</TITLE> <LINK HREF="Bash-Prog-Intro-HOWTO-7.html" REL=next> <LINK HREF="Bash-Prog-Intro-HOWTO-5.html" REL=previous> <LINK HREF="Bash-Prog-Intro-HOWTO.html#toc6" REL=contents> </HEAD> <BODY> <A HREF="Bash-Prog-Intro-HOWTO-7.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-5.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc6">Indice</A> <HR> <H2><A NAME="s6">6. Condizionali</A> </H2> <P> Le (espressioni, ndt) condizionali ti permettono di decidere se compiere o no un'azione. Tale decisione è presa valutando un'espressione. <P> <H2><A NAME="ss6.1">6.1 Pura Teoria</A> </H2> <P> Le (espressioni, ndt) condizionali hanno varie forme. La forma più basilare è: <B>if</B> <I>espressione</I> <B>then</B> <I>istruzione</I> dove 'istruzione' viene eseguita solamente se 'espressione' ha valore "vero". '2<1' è una espressione che ha valore "falso", mentre '2>1' ha valore "vero". <P> Le condizionali hanno altre forme come: <B>if</B> <I>espressione</I> <B>then</B> <I>istruzione1</I> <B>else</B> <I>istruzione2</I>. Qui 'istruzione' è eseguita se 'espressione' è vera, altrimenti viene eseguita 'istruzione2'. <P> Ancora un'altra forma di (espressione, ndt) condizionale è: <B>if</B> <I>espressione1</I> <B>then</B> <I>istruzione1</I> <B>else if</B> <I>espressione2</I> <B>then</B> <I>istruzione2</I> <B>else</B> <I>istruzione3</I>. In questa forma è stato aggiunto solamente "ELSE IF 'espressioen2' THEN 'istruzione2'" che fa eseguire istruzione2 se espressione2 vale "vero". Il resto è come ti puoi immaginare (vedi le forme precedenti). <P> Una parola sulla sintassi: <P> La base per i costrutti 'if' nella bash è questa: <P> if [espressione]; <P> then <P> codice eseguito se 'espressione' è vera. <P> fi <H2><A NAME="ss6.2">6.2 Esempio: Esempio basilare di condizionale if .. then</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash if [ "foo" = "foo" ]; then echo expression evaluated as true fi </PRE> </CODE></BLOCKQUOTE> <P> Il codice da eseguire se l'espressione tra parentesi quadre è vera può trovarsi solamente dopo la parola 'then' e prima del 'fi' che indica la fine del codice eseguito sotto condizione. <H2><A NAME="ss6.3">6.3 Esempio: Esempio basilare di condizionale if .. then ... else</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash if [ "foo" = "foo" ]; then echo expression evaluated as true else echo expression evaluated as false fi </PRE> </CODE></BLOCKQUOTE> <H2><A NAME="ss6.4">6.4 Esempio: Condizionali con variabili</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash T1="foo" T2="bar" if [ "$T1" = "$T2" ]; then echo expression evaluated as true else echo expression evaluated as false fi </PRE> </CODE></BLOCKQUOTE> <HR> <A HREF="Bash-Prog-Intro-HOWTO-7.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-5.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc6">Indice</A> </BODY> </HTML>