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.

if [ "$?" -eq 0 ]<br />

# È buona pratica controllare l’exit status.<br />

then<br />

echo "Eseguito \"box <strong>di</strong> <strong>di</strong>alogo\" senza errori."<br />

else<br />

echo "Errore(i) nell’esecuzione <strong>di</strong> \"box <strong>di</strong> <strong>di</strong>alogo\"."<br />

# Oppure avete cliccato su "Cancel" invece che su "OK".<br />

rm $OUTFILE<br />

exit $E_INPUT<br />

fi<br />

# Ora, recuperiamo e visualizziamo la variabile.<br />

. $OUTFILE # ’Include’ il file salvato.<br />

echo "La variabile inserita nel \"box <strong>di</strong> input\" è: "$VARIABILE""<br />

rm $OUTFILE # Cancellazione del file temporaneo.<br />

# Alcune applicazioni potrebbero aver ancora bisogno<br />

#+ <strong>di</strong> questo file.<br />

exit $?<br />

Capitolo 33. Miscellanea<br />

Per altri meto<strong>di</strong> <strong>di</strong> <strong>scripting</strong> con l’impiego <strong>di</strong> widget, si provino Tk o wish (derivati Tcl), PerlTk (Perl<br />

con estensioni Tk), tksh (ksh con estensioni Tk), XForms4Perl (Perl con estensioni XForms), Gtk-Perl<br />

(Perl con estensioni Gtk) o PyQt (Python con estensioni Qt).<br />

• Per effettuare revisioni multiple <strong>di</strong> uno script complesso, si usi il pacchetto rcs Revision Control<br />

System.<br />

33.8. Sicurezza<br />

Tra le sue funzionalità vi è anche quella <strong>di</strong> aggiornare automaticamente l’ID dell’intestazione. Il<br />

comando co <strong>di</strong> rcs effettua una sostituzione <strong>di</strong> parametro <strong>di</strong> alcune parole chiave riservate, ad esempio<br />

rimpiazza #$Id$ <strong>di</strong> uno script con qualcosa come:<br />

#$Id: hello-world.sh,v 1.1 2004/10/16 02:43:05 bozo Exp $<br />

33.8.1. Script <strong>di</strong> shell infetti<br />

A questo punto è opportuno un breve avvertimento sulla sicurezza degli script. Uno script <strong>di</strong> shell può<br />

contenere un worm, un trojan o persino un virus. Per questo motivo non bisogna mai eseguire uno script<br />

da root (o consentire che sia inserito tra gli script <strong>di</strong> avvio del sistema in /etc/rc.d), a meno che non si<br />

584

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

Saved successfully!

Ooh no, something went wrong!