这仅检查 PATH 变量?
我可以使用说 PERL=/usr/somelocal/perl 来“覆盖”路径吗
谢谢
使用不同 Perl 二进制文件的三种方法:
PATH
执行脚本前设置环境变量;例如PATH=/opt/alternative-perl/bin:$PATH /path/to/your/script.pl
/opt/alternative-perl/bin/perl /path/to/your/script.pl
$PATH
在“坏” Perl 二进制文件所在的目录之前包含一个目录,那么您可以在这样的目录中放置一个指向“好” Perl 二进制文件的符号链接。但是,这很混乱,只适用于某些情况,但它是比前两种更永久的解决方案。如果您确实拥有对该脚本的写入权限并且您愿意修改它,那么@krishnang 的回复适用:修改第一行以指向要使用的二进制文件,例如#!/opt/alternative-perl/bin/perl
.
您可以指定要使用的任何 perl 二进制文件的完整路径。 env不是必需的。
三个选项:
#!
( /usr/somelocal/perl script.pl
)PATH="/usr/somelocal:$PATH" script.pl
)#!
. ( #!/usr/somelocal/perl
)