<!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: Variabili</TITLE> <LINK HREF="Bash-Prog-Intro-HOWTO-6.html" REL=next> <LINK HREF="Bash-Prog-Intro-HOWTO-4.html" REL=previous> <LINK HREF="Bash-Prog-Intro-HOWTO.html#toc5" REL=contents> </HEAD> <BODY> <A HREF="Bash-Prog-Intro-HOWTO-6.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-4.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc5">Indice</A> <HR> <H2><A NAME="s5">5. Variabili</A> </H2> <P> Puoi usare le variabili come in ogni linguaggio di programmazione. Non esistono tipi di dati. Una variabile nella bash può contenere un numero, un carattere, una stringa di caratteri. <P> Non hai bisogno di dichiarare una variabile, il solo atto di assegnare un valore al suo riferimento farà sì che venga creata. <P> <P> <P> <H2><A NAME="ss5.1">5.1 Esempio: Hello World! usando le variabili</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash STR="Hello World!" echo $STR </PRE> </CODE></BLOCKQUOTE> <P> <P> La riga 2 crea una variabile chiamata STR e le assegna la stringa "Hello World!". Poi il VALORE di questa variabile è recuperato inserendo il simbolo '$' all'inizio (del riferimento, ndt). Osserva (provaci!) che se non usi il segno '$', l'output del programma sarà differente, e probabilmente non quello che avresti voluto fosse. <H2><A NAME="ss5.2">5.2 Esempio: Uno script di backup molto semplice (un poco migliore)</A> </H2> <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash OF=/var/my-backup-$(date +%Y%m%d).tgz tar -cZf $OF /home/me/ </PRE> </CODE></BLOCKQUOTE> <P> Questo script introduce un'altra cosa. Prima di tutto, dovresti aver dimestichezza con la creazione e l'assegnazione di variabile alla riga 2. Osserva l'espressione '$(date +%Y%m%d)'. Se esegui lo script noterai che lancia il comando incluso tra le parentesi, catturando il suo output. <P> <P> Osserva che in questo script, il nome del file di output sarà diverso ogni giorno, a causa dell'opzione di formattazione del comando date (+%Y%m%d). Puoi cambiarlo specificando una differente formattazione. <P> Altri esempi: <P> echo ls <P> echo $(ls) <H2><A NAME="ss5.3">5.3 Variabili locali</A> </H2> <P> Le variabili locali possono essere create utilizzando la keyword <I>local</I>. <P> <BLOCKQUOTE><CODE> <PRE> #!/bin/bash HELLO=Hello function hello { local HELLO=World echo $HELLO } echo $HELLO hello echo $HELLO </PRE> </CODE></BLOCKQUOTE> <P> Questo esempio dovrebbe essere sufficiente a mostrarti come utilizzare una variabile locale. <HR> <A HREF="Bash-Prog-Intro-HOWTO-6.html">Avanti</A> <A HREF="Bash-Prog-Intro-HOWTO-4.html">Indietro</A> <A HREF="Bash-Prog-Intro-HOWTO.html#toc5">Indice</A> </BODY> </HTML>