`

批处理程序判断命令返回结果

阅读更多
Technorati 标签: 批处理,bat,返回结果,0,1

有时候我们会写一些批处理命令来辅助我们的工作,在批处理中要根据命令的返回值做一些判断,有分支的存在,这时候可以使用系统变量%errorlevel%,范例如下:

 

@echo on
dir c:\
echo "返回0说明运行成功,返回1说明运行失败"
set "err=%errorlevel%"
  if "%err%"=="0" (

echo "sucess"

echo “你成功了”

) else(

echo "fail"

echo “你失败啊”

)

pause

 

说明如下:

@echo off
dir z:
IF ERRORLEVEL 1 goto 1
IF ERRORLEVEL 0 goto 0
goto C
:0
echo 命令执行成功!
goto C
:1
echo 命令执行失败!
goto C
:C
echo 判断ERRORLEVEL返回号应该由高到低
PAUSE
或者
@echo off
dir c:
set "err=%ERRORLEVEL%"
IF "%err%"=="0" goto 0
IF "%err%"=="1" goto 1
goto C
:0
echo 命令执行成功!
goto C
:1
echo 命令执行失败!
goto C
:C
echo 将ERRORLEVEL返回号定义到一个变量由if判断
PAUSE
补充回答:返回值是多少在程序执行完后用echo %ERRORLEVEL%来查看该值, 每个命令基本返回值0或1(0成功1失败)特别是内部命令,不能一概的说是系统规定的,而是命令所指定的,第三方命令(外部命令)会提供多个甚至几十个返回值但最多 256±1 个返回值,各命令的返回值含义可能各不相同,其返回值含义及用法在此程序开发者原始自述文中有说明。
举例:
xcopy test.txt y:
if errorlevel 5 echo 出现了磁盘写入错误
if errorlevel 4 echo 出现了初始化错误
if errorlevel 2 echo 用户按CTRL+C终止
if errorlevel 1 echo 文件复制失败
if errorlevel 0 echo 文件复制成功
xxxx.exe 2>nul
if %errorlevel%==9009 xxxx.exe命令无效

分享到:
评论

相关推荐

    批处理命令大全,详细介绍各种命令和语法

    从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。call 命令接受用作调用目标的标 签。如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。语法 call [[Drive:][Path] FileName ...

    如何编写批处理文件批处理文件批处理文件

    简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...

    cmd命令速查手册 轻松学会doc

    CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间...

    Dos命令大全

    从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。call 命令接受用作调用目标的标签。如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。 语法 call [[Drive:][Path] FileName ...

    grub4dos-V0.4.6a-2017-02-04更新

    更新说明: 2017-02-04(yaya) Ls command: Empty Folder returns false. ...解决当命令行长度过长或批处理的参数过多时导致的内存冲突问题. 2013-03-19 1.新增连续命令分隔符";;",无阻碍顺序执行. 例子: set a...

    MaxDOS 5.6s U盘版

    如果密码不想被读取很简单,就是直接删除 x:\windows\system32\sys56s.ini (2000为winnt) 这个文件,或者将其改名成其它文件名,他就读不出来了,但是如果删除了这个文件就会造成无法自动卸载 MAXDOS程序,当然你也可以...

    msods5.8 u盘上的dos

    Choice.com 选择命令,返回按键的errorlevel值. Coms.com 一个清除cmos密码和设置的程序. Deltree.com 同时删除目录,子目录及文件的工具.操作时请注意. Device.com 用命令行...

    MaxDOS_71PXE_G115.rar

    Choice.com 选择命令,返回按键的errorlevel值. Coms.com 一个清除cmos密码和设置的程序. Deltree.com 同时删除目录,子目录及文件的工具.操作时请注意. Device.com 用命令行...

    MaxDOS & Ghost8.2 7 For Vista/2008

    Choice.com 选择命令,返回按键的errorlevel值. Coms.com 一个清除cmos密码和设置的程序. Deltree.com 同时删除目录,子目录及文件的工具.操作时请注意. Device.com 用命令行...

    升级MaxDOS71

    Choice.com 选择命令,返回按键的errorlevel值. Coms.com 一个清除cmos密码和设置的程序. Deltree.com 同时删除目录,子目录及文件的工具.操作时请注意. Device.com 用命令行...

    代码语法错误分析工具pclint8.0

    和前面第一步中的方法基本一样,不过这里我们需要用到unix中的find等命令来查找当前目录下的C和C++文件,然后再将它们送给lint程序处理,所以得先从http://www.weihenstephan.de/~syring/win32/UnxUtils.zip下载...

    C#开发经验技巧宝典

    0984 如何获取存储过程返回的结果集 573 0985 取得数据表某个单元格的值 573 0986 在ASP.NET2.0下将数据绑定DropDownList 573 0987 在ADO.NET中实现数据库的事务处理 574 0988 将任意文件保存到数据库中 ...

    SQL查询安全性及性能优化

    SELECT TOP 1 ID,TITLE,UNITPRICE FROM BOOKS WHERE AUTHOR = '马骏 主编' --数据库只要找到一条符合条件的结果就立即返回了。  由于返回的数据量减少,IO性能提高了  前提:必须知道要返回的行数 select字段...

    MaxDOS 7 & Ghost8.2 For Win2k/XP/2K3

    Choice.com 选择命令,返回按键的errorlevel值. Coms.com 一个清除cmos密码和设置的程序. Deltree.com 同时删除目录,子目录及文件的工具.操作时请注意. Device.com 用命令行模式...

    C#编程经验技巧宝典

    4 <br>0008 为程序设置版本和帮助信息 4 <br>0009 设置Windows应用程序启动窗体 5 <br>0010 设置Web应用程序起始页 5 <br>0011 如何设置程序的出错窗口 5 <br>0012 如何进行程序调试 6 ...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    3. 运行该批处理程序将自动完成oracle卸载工作,最后手动删除\app文件夹(可能需要重启才能删除) 4. 运行regedit命令,打开注册表窗口。删除注册表中与Oracle相关的内容,具体如下:  删除HKEY_LOCAL_MACHINE/...

    javaSE代码实例

    4.2.2 合法的判断表达式 46 4.2.3 合法的case表达式 47 4.2.4 详细执行流程 49 4.3 while循环语句 50 4.4 do-while循环语句 52 4.5 for循环语句 53 4.5.1 基本语法 53 4.5.2 声明的三大组成部分 54 ...

    快捷方式图标去箭头

    操作系统是机器,跑的是程序,它对透明图标的判断标准当然是绝对的数据标准,不是我们的视觉标准。 所以操作系统检测出透明图标然后用黑块图标替换,这种透明一定是数据级别的绝对透明。 举个不见得完全正确的例子 ...

Global site tag (gtag.js) - Google Analytics