当我尝试运行我的Perl脚本时,它成功执行。后来,当我运行这个命令echo %errorlevel%
,它给了我输出为1.为什么?为什么我成功运行Perl脚本后退出代码1?
-1
A
回答
5
如果Perl,以ERRORLEVEL 1返回,然后要么exit(1)
被称为
>perl -e"exit 1"
>echo %errorlevel%
1
或$?
在一个END
处理
>perl -e"END { $? = 1; }"
>echo %errorlevel%
1
或程序去世时$!
设置为1
1
>perl -e"$!=1; die;"
Died at -e line 1.
>echo %errorlevel%
1
(这往往预示一个系统调用失败,出现“不允许操作”)
>perl -E"say $!=1"
Operation not permitted
或程序去世时$!
是0
和$?
为(1 << 8)
。
>perl -e"$!=0; $?=1<<8; die;"
Died at -e line 1.
>echo %errorlevel%
1
我想这是可能的perl
与在其他情况下1
退出(如加载perl
本身的问题),但我不知道有任何这样的情况。
1
要注意的是,您必须立即询问%ERRORLEVEL%。批处理脚本中的每一步都会设置或混淆错误级别,因此如果您希望它保留在周围,它不会。例如,如果您运行一个脚本,然后运行另一个命令(dir或echo等),然后检查errolevel,它将用于脚本之后的命令,而不是脚本本身。
相关问题
- 1. 为什么'os.system'退出代码为1?
- 2. 为什么在Perl中退出代码255而不是-1?
- 3. 如何在perl脚本退出之前运行一段代码
- 4. 为什么我的Perl脚本以137退出?
- 5. 为什么即使失败,我的Perl就地脚本仍然以零退出代码退出?
- 6. 运行PHP代码后脚本成功执行
- 7. 从Java执行Perl脚本tomcat返回255退出代码
- 8. FabActUtil.exe退出代码为-1
- 9. “aspnet_compiler.exe”退出,代码为1
- 10. 运行从代码异常perl脚本
- 11. 运行脚本后SQLPlus退出吗?
- 12. 为什么我的shell脚本在更改用户后退出?
- 13. 为什么我的docker在执行我的shell脚本后退出?
- 14. perl - 为什么退出代码0如果错误文件没有找到,我可以让它的代码1?
- 15. 后生成事件退出,代码为1
- 16. 生成后事件导致退出代码为1
- 17. Perl脚本成功
- 18. 为什么我的powershell脚本返回错误的退出代码?
- 19. 为什么此代码在成功后输出失败消息?
- 20. 运行“rails生成脚手架”时会运行什么代码?
- 21. 如何使用setuid()作为cgi-bin成功运行Perl脚本?
- 22. 为什么Theano代码无误地运行成功?
- 23. 如果sendToSocket成功,为什么setTimeout def.reject代码不能运行?
- 24. 为什么我的bash脚本执行另一个脚本不能退出?
- 25. 期望脚本 - 退出时运行代码
- 26. 为什么不能退出此代码?
- 27. 运行Perl脚本1没有的crontab
- 28. perl system退出代码36096
- 29. Perl:在perl脚本中运行perl脚本的最快方法是什么?
- 30. 为什么我的bash脚本试图将注释作为代码运行?
谢谢!!!你的意思是可能有一个退出(1)在Perl代码?你能更清楚吗? – pauler 2012-07-20 06:39:42
你指的是最后一段?可能会在'perl'本身调用'exit'。但就像我说的,我不知道任何。 – ikegami 2012-07-20 18:55:13
我发现我的perl脚本中有一个退出代码。我已经做出了改变,感谢like帮助ikegami – pauler 2012-07-23 06:23:29