Как узнать, какой Perl я использую при запуске сценария с / usr / bin / env perl? - PullRequest
4 голосов
/ 07 февраля 2012

С помощью шебанга, подобного #!/usr/bin/env perl, как я могу сделать доступным для скрипта Perl, который я использую для запуска скрипта?
(Как в командной строке perl -E 'say $ENV{_}').

Ответы [ 3 ]

7 голосов
/ 07 февраля 2012

Из perlvar есть переменная $^X, которую вы можете использовать.

$ perl -e 'print $^X, "\n";'
/usr/bin/perl5.12.4
3 голосов
/ 07 февраля 2012

Использование $^X.

2 голосов
/ 08 февраля 2012

$^X - это то, на что обычно смотрят

$ perl -E'say $^X;'
/home/ikegami/usr/perlbrew/perls/5.14.2t/bin/perl

К сожалению, в некоторых системах он не содержит абсолютного пути.(Я не знаю почему. Может быть, это потому, что точная информация недоступна в этих системах?) Probe :: Perl find_perl_interpreter усердно работает, чтобы найти абсолютный путь, если $^X нетсодержит абсолютный путь.

$ perl -MProbe::Perl -E'say Probe::Perl->find_perl_interpreter();'
/home/ikegami/usr/perlbrew/perls/5.14.2t/bin/perl
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...