DOS命令应用之IF-ERRORLEVEL

原创 2012年11月11日 20:29:06
if errorlevel n (语句段)
是dos命令行中用来处理错误的语句,大部分命令或程序执行之后都会返回一个变量errorlevel
这个变量是命令行内置的变量,代表错误等级,它的正规运用是传递给dos环境命令出错的严重程度,errorlevel越高代表错误越严重,0代表没有错误


if errorlevel n成立的条件是当前的errorlevel,也就是上一条命令返回的errorlevel值大于等于n
比如if errorlevel 1 echo 出错
就是在错误等级大于等于1的时候显示"出错"


一般的错误处理都是由高到低的,比如
if errorlevel 3 goto:fatalerror
if errorlevel 2 goto:error
if errorlevel 1 goto:warning


建立test4.bat,内容如下:
@echo off
xcopy c:\autoexec.bat d:\ 
if errorlevel 1 echo 文件拷贝失败 
if errorlevel 0 echo 成功拷贝文件 
然后执行文件: 
c:\>test4
如果文件拷贝成功,屏幕就会显示“成功拷贝文件”,否则就会显示“文件拷贝失败”。 
if errorlevel 是用来测试它的上一个dos命令的返回值的,注意只是上一个命令的返回值,而且返回值必须依照从大到小次序顺序判断。 
因此下面的批处理文件是错误的: 
@echo off 
xcopy c:\autoexec.bat d:\ 
if errorlevel 0 echo 成功拷贝文件 
if errorlevel 1 echo 未找到拷贝文件 
if errorlevel 2 echo 用户通过ctrl-c中止拷贝操作 
if errorlevel 3 echo 预置错误阻止文件拷贝操作 
if errorlevel 4 echo 拷贝过程中写盘错误 
无论拷贝是否成功,后面的: 
未找到拷贝文件 
用户通过ctrl-c中止拷贝操作 
预置错误阻止文件拷贝操作 
拷贝过程中写盘错误 
都将显示出来。


以下就是几个常用命令的返回值及其代表的意义: 
backup 
0 备份成功 
1 未找到备份文件 
2 文件共享冲突阻止备份完成 
3 用户用ctrl-c中止备份 
4 由于致命的错误使备份操作中止 
diskcomp 
0 盘比较相同 
1 盘比较不同 
2 用户通过ctrl-c中止比较操作 
3 由于致命的错误使比较操作中止 
4 预置错误中止比较 
diskcopy 
0 盘拷贝操作成功 
1 非致命盘读/写错 
2 用户通过ctrl-c结束拷贝操作 
3 因致命的处理错误使盘拷贝中止 
4 预置错误阻止拷贝操作 
format 
0 格式化成功 
3 用户通过ctrl-c中止格式化处理 
4 因致命的处理错误使格式化中止 
5 在提示“proceed with format(y/n)?”下用户键入n结束 
xcopy 
0 成功拷贝文件 
1 未找到拷贝文件 
2 用户通过ctrl-c中止拷贝操作 
4 预置错误阻止文件拷贝操作 
5 拷贝过程中写盘错误
本文来自: 脚本之家(www.jb51.net) 详细出处参考:http://www.jb51.net/article/7525.htm

DOS命令应用之分离路径和文件名

DOS命令应用之分离路径和文件名   @echo off :: 获取某个路径格式字符串中指定节的字符串 :: code by jm 2006-12-11 CMD@XP s...
  • qhexin
  • qhexin
  • 2014年05月15日 11:21
  • 786

(14)多线程与并发库之java5同步集合类的应用【包含jdk1.5新特性 ConcurrentHashMap】

第一部分: 常用的集合类ArrayList、Map等在多线程操作同一对象时会发生不同步的线程而造成数据读取和写入错误;通常都是采用synchronized修饰符或Lock将那些方法括起来来确保它们在...
  • itm_hadf
  • itm_hadf
  • 2012年05月05日 21:22
  • 1830

哈夫曼编码树的C++实现

哈夫曼编码,参考与《算法导论》 //huffman_another solution #include #include #include #include using namespace s...
  • liuchenjane
  • liuchenjane
  • 2016年11月24日 17:38
  • 427

iOS8 study for ——iOS8新特性之扩展(Extension)

扩展(extension)是iOS8引入的新特性,
  • SakuraBurial
  • SakuraBurial
  • 2014年07月25日 18:37
  • 194

RMAN高级应用之Duplicate复制数据库(4)实战

  经过前面的准备工作,大展拳脚的时刻终于来临了。在正在创建复制之前,我们先来描述一下需求,一个明确的、清晰的、可实现的需求更加有助于我们操作的实施,所以语言描述能力也是一项非常高超的技巧,下面大家看...
  • junsisi
  • junsisi
  • 2007年12月06日 12:26
  • 659

十大最佳Android游戏下载平台

转载:十大最佳Android游戏下载平台 Android游戏的快速发展,让人感叹,后生可畏,不知道做为Android用户的您,是从哪里开始下载Android游戏的,甚至说你的手机第一张壁纸有事从哪儿...
  • wulong710
  • wulong710
  • 2013年05月03日 10:27
  • 1117

电商大数据应用之用户画像

用户画像的概念用户画像也叫用户信息标签化、客户标签。从电商角度看,根据客户在电商网站上所填的信息和客户行为,可以用一些标签把客户描绘出来,描述客户的标签就是用户画像。用户画像的内容用户画像的构建技术用...
  • sinat_22840937
  • sinat_22840937
  • 2017年12月02日 11:05
  • 183

程序猿讲述“性能优化”——Mysql千万级数据库优化技巧

一、MySQL的主要适用场景 1、Web网站系统 2、日志记录系统 3、数据仓库系统 4、嵌入式系统 二、MySQL架构图: 三:Mysql数据库优化技...
  • Gupaoxueyuan
  • Gupaoxueyuan
  • 2018年01月23日 16:29
  • 114

DOS命令应用之批量更改文件名、扩展名

/********************** rns.bat ***************************/@echo off & setlocal enabledelayedexpans...
  • kivcare
  • kivcare
  • 2009年12月17日 23:44
  • 4229

DOS基本命令(基本部分)

一、cls(clear screen的简写)        命令作用:清屏屏幕        详细介绍:屏幕显示的所有字符信息都是存放在一个屏幕缓冲区中,cls命令的作用是清除屏幕上的文字,并将该...
  • CTO_51
  • CTO_51
  • 2014年04月27日 12:58
  • 10983
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DOS命令应用之IF-ERRORLEVEL
举报原因:
原因补充:

(最多只允许输入30个字)