使用像#!/usr/bin/env perl
这样的shebang,我如何使脚本可以访问我用于运行脚本的perl?
(就像在perl -E 'say $ENV{_}'
命令行中一样)。
答案 0 :(得分:7)
从perlvar开始,您可以使用$^X
变量。
$ perl -e 'print $^X, "\n";'
/usr/bin/perl5.12.4
答案 1 :(得分:3)
使用$^X
。
答案 2 :(得分:2)
$^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
很难找到绝对路径一条绝对的道路。
{{1}}