如何防止Perl程序在完成后关闭其窗口?

8

如何在windows系统中防止Perl程序执行完毕后关闭窗口?

我可以运行一个Hello World程序,但它关闭得太快了,我来不及读它。

print "Hello World\n";
while (1){sleep(1)}

我找到的似乎是唯一的解决方案,但我敢打赌肯定有更好的方法来解决这个问题。


2
你是如何执行程序的?难道不是直接从命令行执行吗? - ajwood
4个回答

13

从 Windows 命令提示符中运行你的脚本,而不是在资源管理器中点击图标。当你通过点击图标来运行控制台模式程序时,Windows 会打开一个窗口运行该程序,然后关闭窗口。当你从命令提示符中运行控制台模式程序时,窗口不会关闭:

C:\test> perl hello.pl
Hello World
C:\test>

3
print "Hello, world\n";
print "Press RETURN to continue ";
<STDIN>;

3
将以下代码添加到程序末尾:

system("pause");

Windows会提示“按任意键继续...”


0

检查您的完整文件位置字符串。

我曾经遇到过这个问题,但它只出现在一个特定的文件中,所以我认为它可能与该文件有关。其中一个父目录中有一个&符号,Padre客户端无法解释完整的文件字符串。请确保您的完整文件位置字符串没有空格或非字母数字字符。

虽然不是万无一失的,但这是一个需要避免的陷阱。


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