Портативная линия Shebang - PullRequest
4 голосов
/ 17 мая 2010
#!/usr/bin/perl

Это строчка для многих сценариев, которые я пишу в последнее время.

Жесткое кодирование пути двоичного файла может создать некоторые проблемы. Например, если у одного из моих пользователей Perl установлен в /thing_else / bin, им придется изменить все шебанги.

Я видел некоторые инструменты, которые автоматически заменят шебанги, но мне интересно, есть ли что-нибудь попроще.

Ответы [ 2 ]

12 голосов
/ 17 мая 2010

env(1)

#!/usr/bin/env perl
1 голос
/ 07 апреля 2012

Для нечетных встроенных систем, в которых env отсутствует в / usr / bin / env (например, в блоках NAS, использующих funplug и т. Д.), Это может работать. Основано на трюке ActivePerl / DOS

#!/bin/sh
exec perl -x -S "$0" "$@"
#!perl
print "hello";
...