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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Capitolo 33. Miscellanea<br />

modulare e supporta qualsiasi cosa, dalla programmazione orientata agli oggetti fino alla preparazione<br />

del caffè. Brevi script in Perl si prestano bene ad essere inseriti in script <strong>di</strong> shell e si può anche<br />

<strong>di</strong>chiarare, con qualche ragione, che Perl possa sostituire completamente lo <strong>scripting</strong> <strong>di</strong> shell stesso<br />

(sebbene l’autore <strong>di</strong> questo documento rimanga scettico).<br />

Esempio 33-6. Perl inserito in uno script <strong>Bash</strong><br />

#!/bin/bash<br />

# I coman<strong>di</strong> shell possono precedere lo script Perl.<br />

echo "Questa riga precede lo script Perl inserito in \"$0\"."<br />

echo "==============================================================="<br />

perl -e ’print "Questo è lo script Perl che è stato inserito.\n";’<br />

# Come sed, anche Perl usa l’opzione "-e".<br />

echo "==============================================================="<br />

echo "Comunque, lo script può contenere anche coman<strong>di</strong> <strong>di</strong> shell e <strong>di</strong> sistema."<br />

exit 0<br />

È anche possibile combinare, in un unico file, uno script <strong>Bash</strong> e uno script Perl. Dipenderà dal modo in<br />

cui lo script verrà invocato quale delle due parti sarà eseguita.<br />

Esempio 33-7. Script <strong>Bash</strong> e Perl combinati<br />

#!/bin/bash<br />

# bashandperl.sh<br />

echo "Saluti dalla parte <strong>Bash</strong> dello script."<br />

# Qui possono seguire altri coman<strong>di</strong> <strong>Bash</strong>.<br />

exit 0<br />

# Fine della parte <strong>Bash</strong> dello script.<br />

# =======================================================<br />

#!/usr/bin/perl<br />

# Questa parte dello script deve essere invocata con l’opzione -x.<br />

print "Saluti dalla parte Perl dello script.\n";<br />

# Qui possono seguire altri coman<strong>di</strong> Perl.<br />

# Fine della parte Perl dello script.<br />

bash$ bash bashandperl.sh<br />

Saluti dalla parte <strong>Bash</strong> dello script.<br />

bash$ perl -x bashandperl.sh<br />

551

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

Saved successfully!

Ooh no, something went wrong!