【问题标题】:ActivePerl not working on Windows 8.1 64-bitActivePerl 不适用于 Windows 8.1 64 位
【发布时间】:2018-08-25 05:32:06
【问题描述】:

我是 ActivePerl 的新手。但是,我需要在我的新 Windows 8.1 上使用它。

我尝试下载 5.26.1.2601 和 5.24.3.2404 (x64) 进行安装。

但是当我使用 file.pl 和 file.bat 运行时,它会在几秒钟内突然关闭。

然后我需要使用不同的 Windows 操作系统进行测试。我将这些文件保存到我女儿的 32 位 Windows 7 计算机上,令人惊讶的是,只需点击一下,一切都运行良好。

我已经将 PATH 设置为 C:\Perl64\bin 和 C:\Perl64\site\bin 但它仍然无法正常工作。

所以,我怀疑为什么我的 Windows 8.1 出现问题以及如何解决它?

谢谢

【问题讨论】:

  • 注意:我已经在安装和运行时关闭了防病毒软件。
  • Windows 8 和 Windows 10(以及它们的服务器等价物)在从控制台运行时似乎抑制了 STDERR。可能有一个设置来改变它。错误通常出现在控制台本身或弹出的对话框中。对于初学者,尝试运行如下命令: perl file.pl > error.txt 然后查看错误文件。还记得用“perl ”调用你的perl脚本如果你只是自己调用脚本,它似乎会影响命令行参数的解析方式。
  • 在命令提示符下运行:cd /d %USERPROFILE%\Desktop。然后运行perl myfile.pl
  • 完成。但什么都没有改变。似乎 perl 不知道或忘记 myfile.pl 中的代码。怀疑为什么我姐姐的笔记本电脑在第一次运行时没有更改文件。

标签: windows perl batch-file activeperl


【解决方案1】:

我怀疑你是通过双击它们来运行它们的。这将运行程序并在程序完成后立即退出(丢失所有输出)。对于几乎立即可用的玩具程序。

当您从命令提示符(或 PowerShell)窗口运行程序时会发生什么?

【讨论】:

  • 是的,我通过双击运行它们。但是当我尝试在我姐姐的笔记本电脑(Windows 7 32 位)上运行时,它从第一次双击就可以工作了!对于命令提示符,当我键入 perl myfile.pl 时。它警告“无法打开 perl 脚本 myfile.pl。没有这样的文件或目录。”注意:我将 myfile.pl 放在桌面上,就像放在我姐姐的笔记本电脑上一样。太奇怪了。
  • 提出了所有建议,但仍然无法解决。真的怀疑这个错误。
  • 您需要通过提供文件路径或与文件位于同一目录中来运行它。
【解决方案2】:

我认为 brian d foy 的反应是正确的,但还有更多。需要仔细附加 Windows 操作系统,包括在 system environment variable 中的 perl 解释器的路径加上计算机可能需要重新启动,或者正在使用的命令窗口将需要 PATH 修订来更新路径以包含相同的目录perl 解释器的位置。您说路径已设置,但不明确;是在命令提示符窗口中还是通过系统环境变量?建议通过Windows控制面板更新系统中的PATH环境变量。

可以从包含 perl 脚本的目录调用运行 perl 脚本,或者脚本的路径需要在调用之前,例如:c:\directory-a\dirctory-b\file.pl --- 从 c:\users\mysuername 运行 file.pl 不会删除它,除非它恰好是 perl 脚本所在的位置。

一个调试建议,将以下语句添加到您的 perl 脚本中:

print "my script runs!";
sleep 4;

并查看屏幕上是否显示任何内容。如果您从命令窗口运行而不是在文件资源管理器中双击文件,则该窗口不应消失。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-11
    • 2013-06-08
    • 1970-01-01
    • 2012-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-11
    相关资源
    最近更新 更多