是否有一组标准的Window Shell脚本(* .bat文件)返回码?我正在寻找类似于Linux退出代码的东西,其中0 ==成功和非零==失败。 我需要一种编程方式来检查我的shell脚本在执行过程中是否失败。窗口外壳脚本返回码
3
A
回答
2
最常见的practive与Unix标准相同,所以0的返回码(也称为批处理文件中的errorlevel)是成功的,而高于0的任何值都是错误。
有找,虽然一些相关陷阱的 - 看看这个指南:
1
您可以检查ERRORLEVEL值。
的IF外壳语句的帮助,告诉我下面的:
IF [NOT] ERRORLEVEL number command
ERRORLEVEL number Specifies a true condition if the last program run
returned an exit code equal to or greater than the number
specified.
2
0为失败成功,非0也是Windows批处理命令的惯例。当命令失败时,它将设置ERRORLEVEL,它是一个可以在批处理文件中测试的特殊变量。
if errorlevel 1 goto failure
只要您不运行其他命令,错误级别就会传递给运行.bat文件的调用方。
1
通常,Windows实用程序在成功时返回0
,并且像Linux应用程序一样返回非零错误(通过ERRORLEVEL变量)。不幸的是,没有强制执行的官方“标准”,并不是每个实用程序或脚本都会设置错误级别。
如果您有想要测试返回状态的脚本,请确保脚本使用EXIT /B ##
退出,导致错误级别设置为##
。
0
我更喜欢这种方式:
[run an exe here]
IF %errorlevel% NEQ 0 (
CALL :SSH_fail filename.sh %errorlevel%
)
:SSH_fail
Email.exe "%mailTo%" "%mailProgram% - SSH Failure " "Body: errorlevel:%~2 file name: %~1"
goto cont
这样,我知道到底是什么错误级别了。我认为可能会达到250个错误级别。
相关问题
- 1. 外壳脚本编码器
- 2. 外壳脚本端口扫描器
- 3. 外壳脚本启动1个会话与多个窗口
- 4. 外壳脚本UI
- 5. 文件外壳脚本的编码
- 6. 访问Ruby脚本的返回值在外壳
- 7. 返回线在一个外壳脚本中使用NCAT管
- 8. 功能外壳脚本没有返回数据
- 9. JSch外壳返回到StringArray
- 10. 在一个外壳脚本
- 11. MySQL清理外壳脚本
- 12. 强制外壳脚本flflush
- 13. 带外壳脚本的RAILS_ROOT
- 14. 使用外壳脚本
- 15. 使用外壳脚本
- 16. “尝试”外壳脚本
- 17. 外壳脚本解析
- 18. (?TCL)脚本从外壳
- 19. 简单的外壳脚本
- 20. 分析外壳脚本
- 21. 比较在外壳脚本
- 22. 经由外壳脚本
- 23. 环路bash外壳脚本
- 24. 差异在外壳脚本
- 25. 从外壳脚本函数
- 26. 外壳脚本:出口TEST1 =“ABC”的作品,但是$(回声“出口TEST2 =‘ABC’”)不
- 27. Solaris外壳/终端仿真器窗口
- 28. 检测窗口外壳变化
- 29. 外壳脚本开放瓶驱动的网页打开两个窗口
- 30. 如何创建与窗口外壳批处理脚本系统日期目录