我发现我的 OSX 10.10 附带了 perl 5.16 和 5.18。默认情况下,当我运行 perl 时,我使用的是 perl 5.18。我有没有办法在运行 perl 命令时运行 perl 5.16?
admins-Mac-mini:~ bufferoverflow76$ ls -l /usr/bin/perl*
-rwxr-xr-x 1 root wheel 58416 Sep 10 10:06 /usr/bin/perl
-rwxr-xr-x 1 root wheel 35600 Sep 10 10:06 /usr/bin/perl5.16
-rwxr-xr-x 1 root wheel 35600 Sep 10 10:06 /usr/bin/perl5.18
admins-Mac-mini:~ bufferoverflow76$ perl -version
This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-thread-multi-2level
(with 2 registered patches, see perl -V for mor
答案1
您应该能够使用以下任一命令来执行此操作:
defaults write com.apple.versioner.perl Version -string 5.16
或者
export VERSIONER_PERL_VERSION=5.16
这些不是系统范围的设置,只会影响设置它们的用户。
资料来源:http://krypted.com/mac-os-x/perl-control/和https://gist.github.com/crankycoder/1389144
答案2
如果你想避免弄乱基本系统,你可以为你的环境添加一个别名。例如,在你的~/.bashrc
:
alias perl="/usr/bin/perl5.16"
/usr/bin/perl5.16
或者在你的 中添加一个符号链接$PATH
,这可能是更好的选择。例如
ln -s /usr/bin/perl5.16 ~/bin/perl
然后在你的中~/.bashrc
添加:
export PATH=~/bin:$PATH
但这不会解决具有直接指向的 shebang 行的脚本/usr/bin/perl
。
为了更复杂、更方便地管理多个 Perl 安装,请考虑使用佩尔布鲁。