如何在Windows 7上运行2个版本的Perl?

3
我需要在Windows 7上运行两个版本的perl。
第一个版本是与VMware vCLI捆绑在一起的Active State Perl 5.8.8。
我需要用于脚本开发的是Stawberry 5.12.4(类似于这样)。
当我键入perl -v时,它调用AS perl,它似乎不支持命名捕获和其他我在perl中认为理所当然的东西。
两个perl都已安装,我只是不知道如何调用Stawberry而不是AS perl。
有任何想法吗?
2个回答

3

根据David Heffernan的指示,您可以通过编辑PATH环境变量来解决您的特定问题。

System control panel
> Advanced system settings
> Environment variables
> Path
> Edit...

更广义地说,这是我目前在Windows 7上管理多个版本的Perl、Python等语言的一般方法。我会感激更好的做法建议。
我会按以下方式创建Perl安装区域:
C:\usr\perls\
     5.10\
     5.12\
     etc.

     current # Symbolic link.

在同一区域,我创建了一个符号链接(current),指向我想要作为默认版本的版本,并确保我的PATH环境变量中所有Perl引用都使用current而不是特定的版本号。
# Open cmd window as an administrator.
cd C:\usr\perls
mklink /D current 5.12

在这种方式下,我只需更改一个符号链接即可快速修改系统默认的Perl,而不需要对PATH进行多次编辑,这样更加繁琐。

此外,我还添加了一个包含批处理脚本以调用特定Perl的目录到我的PATH中。

C:\usr\bin
    perl5.10.bat
    perl5.12.bat
    etc.

这些脚本的样子看起来像是这个例子:

    @ C:\usr\perls\5.12\perl\bin\perl.exe %*

1
我会通过更改PATH环境变量来实现这一点。将其指向5.12版本,您可能会发现VMware代码继续工作,因为它知道在哪里找到它的Perl。如果不行,可以创建一个.bat文件,将PATH设置为引用5.12安装,并使用该文件从中启动cmd窗口,从中调用perl调用5.12。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接