0

这仅检查 PATH 变量?

我可以使用说 PERL=/usr/somelocal/perl 来“覆盖”路径吗

谢谢

4

4 回答 4

4

使用不同 Perl 二进制文件的三种方法:

  1. PATH执行脚本前设置环境变量;例如PATH=/opt/alternative-perl/bin:$PATH /path/to/your/script.pl
  2. 执行要直接使用的 Perl 二进制文件,并使用脚本名称作为其参数:/opt/alternative-perl/bin/perl /path/to/your/script.pl
  3. 如果您$PATH在“坏” Perl 二进制文件所在的目录之前包含一个目录,那么您可以在这样的目录中放置一个指向“好” Perl 二进制文件的符号链接。但是,这很混乱,只适用于某些情况,但它是比前两种更永久的解决方案。

如果您确实拥有对该脚本的写入权限并且您愿意修改它,那么@krishnang 的回复适用:修改第一行以指向要使用的二进制文件,例如#!/opt/alternative-perl/bin/perl.

于 2012-10-17T13:58:03.343 回答
0

您可以在脚本的开头使用它:

#!/usr/somelocal/perl

参考社邦声明

于 2012-10-17T13:53:06.167 回答
0

您可以指定要使用的任何 perl 二进制文件的完整路径。 env不是必需的。

于 2012-10-17T13:53:31.940 回答
0

三个选项:

  • 不要使用#!( /usr/somelocal/perl script.pl)
  • 修复路径 ( PATH="/usr/somelocal:$PATH" script.pl)
  • 修复不正确的#!. ( #!/usr/somelocal/perl)
于 2012-10-17T15:01:23.727 回答