在Windows 7上设置Active Perl 5.8.6

时间:2013-03-22 19:02:21

标签: perl

我知道之前已经问过这个问题,但我发现的所有决议都不适用于我。这是我想要做的。

我需要能够通过键入以下命令提示符运行perl脚本:

helloworld param1 param2

如果我现在尝试这样做,我的参数不会在@ARGV中捕获。但是,如果我输入:

perl helloworld.pl param1 param2

参数在@ARGV中捕获。

我已就此主题的其他帖子做了以下内容:

assoc .pl=Perl
ftype Perl="C:\Perl\Bin\perl.exe" "%1" %*

我还点击了start-> deafault程序 - >将文件类型或协议与程序相关联。搜索.pl并浏览到C:\ Perl \ bin \ perl.exe。

我还使用regedit将HKCR \ Perl \ shell \ open \命令中的打开值更改为:

(Default) REG_SZ "C:\Perl\Bin\perl.exe" %1 %*

完成所有这些操作后,我仍无法通过输入以下内容来执行脚本:

helloworld param1 param2

对于我可能错过以使其发挥作用的任何其他意见或建议将不胜感激......

2 个答案:

答案 0 :(得分:3)

你说你有

"C:\Perl\Bin\perl.exe" "%1" %*

但是您将其更改为

"C:\Perl\Bin\perl.exe" %1 %*

应该是前者。


使用您描述的设置,您应该使用

helloworld.pl param1 param2
          ^^^

如果您想省略.pl,则必须将.pl添加到PATHEXT env var。

>set PATHEXT=.PL;%PATHEXT%

>type a.pl
print "$ARGV[0], $ARGV[1]!\n";

>a Hello World
Hello, World!

(当然,您可能希望通过更改启动环境而不仅仅是此shell来使更改更加永久。)

答案 1 :(得分:0)

我下载了以下应用程序:

http://creativelement.com/powertools/

我用它来创建.pl与perl.exe的关联,然后我可以用perl或.pl运行perl脚本,它也会接受我的参数。与我在这些帖子中阅读的所有内容相比,我不确定它做了什么,但我只是想与大家分享。

由于