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.

Note<br />

#!/bin/bash<br />

input=$1<br />

Capitolo 34. <strong>Bash</strong>, versioni 2 e 3<br />

if [[ "$input" =~ "[1-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]" ]]<br />

# NNN-NN-NNNN<br />

# Dove a ogni N corrisponde una cifra.<br />

# Però quella iniziale non deve essere uno 0.<br />

then<br />

echo "Numero <strong>di</strong> Social Security."<br />

else<br />

echo "Non è un numero della Social Security!"<br />

# Or, ask for corrected input.<br />

fi<br />

Per un altro esempio sull’uso dell’operatore =~, ve<strong>di</strong> Esempio A-28.<br />

Cautela<br />

L’aggiornamento alla versione 3 <strong>di</strong> <strong>Bash</strong> blocca l’esecuzione <strong>di</strong> alcuni script che<br />

funzionavano con le versioni precedenti. Occorre verificare gli script critici per<br />

accertarsi che funzionino ancora!<br />

Proprio un paio <strong>di</strong> script presenti in <strong>Guida</strong> Avanzata <strong>di</strong> Scripting <strong>Bash</strong> avrebbero<br />

dovuto essere correti (ve<strong>di</strong> Esempio A-20 e Esempio 9-4).<br />

1. Chet Ramey ha promesso gli array associativi (una funzionalità Perl) in una futura release <strong>di</strong> <strong>Bash</strong>.<br />

Questo non è ancora avvenuto, neanche nella versione 3.<br />

594

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

Saved successfully!

Ooh no, something went wrong!