在 Windows 服务器上(我测试了 2008 R2 和 2012 R2),我们注意到从批处理调用的 Perl 脚本的执行有不同的行为。
考虑如下原始批处理文件:
:beginlbl
call path\script.pl
goto :beginlbl
迟早(有时在数百次执行后仅执行几次脚本后)会出现错误消息: “Windows 无法访问指定的设备、路径或文件。您可能没有适当的权限来访问该项目。”
如果将第二行代码修改为如下所示:
call perl path\script.pl
(注意脚本前的可执行文件名。)脚本将永远运行而不会出现问题。
在上述两种情况下,Windows 的执行方式有何不同?