11.04.2013 Views

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

Guida avanzata di scripting Bash - Portale Posta DMI

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

$-<br />

Esempio 9-8. $* e $@ quando $IFS è vuota<br />

#!/bin/bash<br />

Capitolo 9. Variabili riviste<br />

# Se $IFS è impostata, ma vuota, allora "$*" e "$@" non<br />

#+ visualizzano i parametri posizionali come ci si aspetterebbe.<br />

mecho () # Visualizza i parametri posizionali.<br />

{<br />

echo "$1,$2,$3";<br />

}<br />

IFS="" # Impostata, ma vuota.<br />

set a b c # Parametri posizionali.<br />

mecho "$*" # abc„<br />

mecho $* # a,b,c<br />

mecho $@ # a,b,c<br />

mecho "$@" # a,b,c<br />

# Il comportamento <strong>di</strong> $* e $@ quando $IFS è vuota <strong>di</strong>pende da quale<br />

#+ versione <strong>Bash</strong> o sh è in esecuzione. È quin<strong>di</strong> sconsigliabile fare<br />

#+ affidamento su questa "funzionalità" in uno script.<br />

# Grazie Stephane Chazelas.<br />

exit 0<br />

Altri parametri particolari<br />

Opzioni passate allo script (utilizzando set). Ve<strong>di</strong> Esempio 11-15.<br />

Cautela<br />

In origine era un costrutto ksh che è stato adottato da <strong>Bash</strong>, ma,<br />

sfortunatamente, non sembra funzionare in modo atten<strong>di</strong>bile negli script<br />

<strong>Bash</strong>. Un suo possibile uso è quello <strong>di</strong> eseguire un’autoverifica <strong>di</strong><br />

interattività.<br />

116

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!