bat/cmd 抛出错误码和捕获错误
前言
略
抛出错误码
@echo off:: 命令1
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
:: 命令2
IF %ERRORLEVEL% NEQ 0 GOTO ERROR
:: 命令3
IF %ERRORLEVEL% NEQ 0 GOTO ERROR:OK
ECHO command success
GOTO END:ERROR
ECHO command failed
GOTO END:END
IF %ERRORLEVEL% GEQ 0 EXIT /B %ERRORLEVEL%
EXIT /B 0
捕获错误
@echo offcd /d %~dp0
set bin_dir=%CD%call %bin_dir%\a.bat
IF %errorlevel% NEQ 0 GOTO ERROR:OK
ECHO command success
GOTO END:ERROR
ECHO command failed
GOTO END:END
IF %ERRORLEVEL% GEQ 0 EXIT /B %ERRORLEVEL%
EXIT /B 0
示例
a.bat
@echo offabc987defg
IF %ERRORLEVEL% NEQ 0 GOTO ERROR:OK
ECHO [BAT FILE A] command success
GOTO END:ERROR
ECHO [BAT FILE A] command failed
GOTO END:END
IF %ERRORLEVEL% GEQ 0 EXIT /B %ERRORLEVEL%
EXIT /B 0
b.bat
@echo offcd /d %~dp0
set bin_dir=%CD%call %bin_dir%\a.bat
IF %errorlevel% NEQ 0 GOTO ERROR:OK
ECHO [BAT FILE B] command success
GOTO END:ERROR
ECHO [BAT FILE B] command failed
GOTO END:END
IF %ERRORLEVEL% GEQ 0 EXIT /B %ERRORLEVEL%
EXIT /B 0
执行结果
cmd> b.bat
'abc987defg' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
[BAT FILE A] command failed
[BAT FILE B] command failed
参考:EXIT 命令
cmd> exit /?
退出 CMD.EXE 程序(命令解释器)或当前批处理脚本。EXIT [/B] [exitCode]/B 指定要退出当前批处理脚本而不是 CMD.EXE。如果从一个批处理脚本外执行,则会退出 CMD.EXEexitCode 指定一个数字号码。如果指定了 /B,将 ERRORLEVEL设成那个数字。如果退出 CMD.EXE,则用那个数字设置过程退出代码。
参考
https://www.cnblogs.com/hualiu0/p/5163744.html
bat/cmd 抛出错误码和捕获错误相关推荐
- 抛出错误_不用try catch,如何机智的捕获错误
这是多个feature组合使用后实现的神奇效果,在React源码中被广泛使用. 当我读源码看到这里时,心情经历了: 懵逼 -- 困惑 -- 沉思 -- 查文档 -- 豁然开朗 看完此文,相信你也会发出 ...
- PHP的异常处理异常捕获错误类
1.错误分类 Fatal Error:致命错误(脚本终止运行)E_ERROR // 致命的运行错误,错误无法恢复,暂停执行脚本E_CORE_ERROR // PHP启动时初始化过程中的致命错误E_CO ...
- bat/cmd批处理程序设计教程
序言 这是一篇技术教程,我真心诚意会用很简单的文字表达清楚自己的意思,只要你识字就能看懂,就能学到知识.我写这篇教程的目的,是让每一个看过这些文字的朋友记住一句话:如果爱可以让事情变的更简单,那么就让 ...
- Windows下的批处理文件.bat/.cmd简介及常用命令
写在前面: 提起批处理,或者 .bat/.cmd 为后缀名的文件,大家可能都见过,也许会比较陌生,这并不是一种新的编程语言或者一种很前沿的技术,在早期的windows系统下的计算机,其实只有一个黑框框 ...
- php register_shutdown_function响应error 配合error_get_last 捕获错误
register_shutdown_function 函数,当我们的脚本执行完成或意外死掉导致PHP执行即将关闭时,我们的这个函数将会 被调用,可以配合 error_get_last 使用,代码如下, ...
- VBA IsNull 应用 - 捕获错误并查找未填充的值
目录 前言 一.什么是Null 二.哪些数据类型可以为空? 三.使用 IsNull 捕获未填充的值 四.用 IsNull 捕捉数据变化 五.使用 IsNull 捕获错误 六.总结 七 补充:Null ...
- java 异常捕获抛出_JAVA异常处理捕获与抛出原理解析
JAVA 异常 当代码运行出现错误导致程序终止运行或出现错误情况的状况,就是异常.异常不是指语法错误,即不属于编译错误,只有运行的程序才会有异常. 这个时候,JAVA 就提供了优秀的处理方法:异常处理 ...
- DOS下常用BAT(cmd)命令
DOS下常用BAT(cmd)命令 在cmd中不显示命令行却显示结果 使用 @echo off @echo off rem off之后ping命令行不会显示在cmd上,结果会在cmd上显示 ping 1 ...
- .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC不是可识别的文件,程序
在之前配置环境变量的时候,跟着网上别人操作,导致自己的系统环境变量错误,明明存在pathext,确 打开anaconda prompt 会提示:.COM;.EXE;.BAT;.CMD;.VBS;.VB ...
最新文章
- 微软私有云Azure Pack实践系列之三创建虚拟机角色
- keil c语言模块化编程,keil C模块化编程总结
- 电阻应用电路之指示灯电路的设计
- 关于继承构造器的调用
- 王者荣耀专区系统服务器繁忙,王者荣耀跨系统转区开放!详细问答汇总,解决全部转区疑惑!...
- 高精度人脸表情识别(附GitHub地址)
- 蓝桥杯 ADV-202算法提高 最长公共子序列(动态规划)
- 2018阿里-研发工程师JAVA Software Engineer, Java
- 微软的Hyper-V专业级虚拟化工具
- movcms能安装PHP吗,LzCMS-博客版 手动安装方法
- WannaCry不相信眼泪 它需要你的安全防御与响应能力
- 775针服务器cpu性能排行,775针cpu排行榜说明
- c++二进制转化成十进制
- 使用uniapp获取当前位置
- Windows xp IIS 信息服务
- 【Swift 60秒】51 - Closures as parameters
- java sub函数,请问Sub子过程与Function函数过程有什么区别?
- VPS云服务器搭建FTP并连接
- 30岁的程序员......
- 云原生改造的实现路径
热门文章
- Codeforces Gym 100286I iSharp 水题
- Linux目录、文件的创建与删除
- 10个最好的 jQuery 视频插件(转)
- 1815. 计算两点间的距离
- How to create a simple 2D graphics program?
- Windows server 2003域下全局组、本地域组及通用组之间的关系详解
- cef谷歌内核浏览器获取cookie值并保存
- Spring集合 (List,Set,Map,Properties) 实例
- 如何注入值到Spring bean属性
- PHP实现带重试功能的curl连接示例