Queste sono buone regole, se avete un buon motivo per rompere loro, non esitate a farlo:
Usa #!/usr/bin/env perl
ove possibile, per la portabilità tra sistemi eterogenei. Ma questo è un modo stupido per farlo perché fa supporre che il Perl che è il primo nel percorso sia anche il Perl che vuoi sempre. Potrebbe non essere così, e di solito quando ci sono molti Perls su un sistema ci sono per una certa ragione.
Un approccio migliore consiste nel pacchettizzare gli script in una distribuzione pronta per CPAN. Distribuire le distribuzioni ai sistemi in cui si desidera installarle e installarle nel modo consueto (manualmente o con la toolchain CPAN), specificando il percorso completo a perl
o cpan
. Durante questo processo, the shebang line is rewritten sul percorso corretto per Perl.
Esempi:
tar -xvf Local-OurCompany-Scripts-1.000.tar.gz
cd Local-OurCompany-Scripts-1.000
## automated installation
/usr/bin/cpan .
# or perhaps
/opt/ourcompany/perls/perl-5.14.2/bin/cpan .
## manual installation
/usr/bin/perl Makefile.PL ; make ; make install
# or perhaps
`which perl5.14.2` Makefile.PL ; make ; make install
Questa domanda in realtà non hanno nulla a che fare con specifici linguaggi di scripting, ma ho lasciato taggato perl perché questo è l'esempio utilizzato nel titolo. – agf