【发布时间】:2012-07-08 21:49:14
【问题描述】:
我有一个为 5.6.1 版编写的 perl 脚本,它依赖于 Oracle 包、DBI 包等。一切都已正确安装并且可以正常工作。
最近安装了 perl 版本 5.8.4,因为这些依赖项设置不正确,所以脚本失败。
'perl' 命令指向 /program/perl_v5.8.4/bin/perl -- 最新版本
所以,当我必须运行我的 perl 脚本时,我必须在命令提示符中手动指定
/program/perl_v5.6.1/bin/perl scriptName.pl
我尝试在脚本中添加以下行:
/program/perl_v5.6.1/bin/perl
use v5.6.1;
但是,这意味着脚本必须采用 Perl 版本 > 5.6.1
我发现了几个相关的问题,建议:
- 导出路径。但是,我想要所有用户的脚本,而不必导出路径
- 指定版本大于。但是,我只想为此脚本使用一个特定版本。
- 使用/要求命令。与上述问题相同。
我的问题:如何在脚本中指定只使用特定版本的 perl?
【问题讨论】:
-
如果我误解了你,我很抱歉,但你不能在脚本的
#!行中指定你需要的 perl 路径吗?比如#!/program/perl_v5.6.1/bin/perl。 -
我认为他忘记了 shebang 行中的 shebang。
-
@raina77ow Sinan 是对的,我的脚本中有 '#!/program/perl_v5.6.1/bin/perl'。但它仍然把我带到最新的 perl 安装(perl -version)
-
Erm... 你是以
perl script.pl执行脚本还是以./script.pl执行脚本?抱歉,如果这听起来很愚蠢(可能确实如此),只需检查一下。 ) -
@raina77ow 你是救生员!我试图将我的脚本作为“perl scriptName.pl”运行,它试图使用最新的 perl 安装运行脚本(这实际上是我的愚蠢错误)。所以,我必须指定整个 perl 安装路径并将脚本运行为 '/program/perl_v5.6.1/bin/perl scriptName.pl' 现在当你建议将它运行为 './scriptName.pl' 它给了我权限被拒绝因此,我尝试将脚本作为“scriptName.pl”运行。像魅力一样工作,拿起指定的 perl 版本 5.6.1 并完成工作。非常感谢!
标签: perl