如何让Win7在perl中将参数传递给@ARGV?

时间:2013-10-26 02:30:16

标签: windows perl

我最近从Windows XP切换到Win7。

Win7不会将命令行参数传递给perl程序中的@ARGV数组。 XP没有这样的问题。

有人可以建议修复此问题吗?

确实让Win7将.pl扩展名与perl.exe相关联

我怀疑它与HKEY_CLASSES_ROOT.pl和HKEY_CLASSES_ROOT \ Applications \ perl.exe有关,但我不知道如何设置它们。

2 个答案:

答案 0 :(得分:1)

使用包含perl blah.pl asdf而不是blah.pl asdf的perl解释器调用脚本,因为Windows会在较新版本中以不同方式处理

请查看此question以获取更多信息,并希望它有所帮助,因为我没有长时间使用Windoz。

答案 1 :(得分:0)

我似乎无法复制问题。

我在Windows 7上运行Active Perl 5.18,两个命令表单都提供相同的输出。你能给出一个输入,命令和结果的例子吗?

argv.pl:

foreach (0 .. $#ARGV)
      { print "$_ ", $ARGV[$_], "\n"
        }

C:\Perl64\Programs>argv a b c
0 a
1 b
2 c

C:\Perl64\Programs>perl argv.pl a b c
0 a
1 b
2 c