ITEEDU

控制命令

GOTO

GOTO 即为跳转的意思。在批处理中允许以“:XXX”来构建一个标号然后用GOTO :标号直接来执行标号后的命令。

IF

IF 条件判断语句,语法格式如下:

  IF [NOT]  ERRORLEVEL number command
  IF [NOT]  string1==string2 command
  IF [NOT] EXIST  filename command 

说明:

[NOT] 将返回的结果取反值即“如果没有”的意思。

ERRORLEVEL 是命令执行完成后返回的退出值 。

Number 退出值的数字取值范围0~255。判断时值的排列顺序应该又大到小。返回的值大于或等于指定的值时条件成立。

string1==string2 string1和string2都为字符的数据,英文字符的大小写将看做不同,这个条件中的等于号必须是2个(绝对相等),条件想等后即执行后面的 command。

EXIST filename 为文件或目录存在的意思。

IF ERRORLEVEL这条语句必须放在某一个命令后面。执行命令后由IF ERRORLEVEL来判断命令的返回值。

例:

1、 IF [NOT] ERRORLEVEL number command

检测命令执行完后的返回值做出判断。

  echo off   
  dir z:   
  rem 如果退出代码为1(不成功)就跳至标题1处执行    
  IF ERRORLEVEL 1  goto 1   
  rem 如果退出代码为0(成功)就跳至标题0处执行    
  IF ERRORLEVEL 0  goto 0   
  :0   
  echo 命令执行成功!    
  Rem 程序执行完毕跳至标题exit处退出    
  goto exit   
  :1   
  echo 命令执行失败!    
  Rem 程序执行完毕跳至标题exit处退出    
  goto exit   
  :exit   
  Rem 这里是程序的出口 

2、 IF string1==string2 command

检测当前变量的值做出判断

  ECHO OFF
  IF %1==2 goto no   
  Echo 变量相等!    
  Goto exit   
  :no   
  echo 变量不相等    
  goto exit   
  :exit

大家可以这样看效果 C:\>test.bat 数字

3、 IF [NOT] EXIST filename command

发现特定的文件做出判断

  echo off   
  IF not EXIST  autoexec.bat goto 1   
  echo 文件存在成功!    
  goto exit   
  :1   
  echo 文件不存在失败!    
  goto exit   
  :exit

这个批处理大家可以放在c盘和d盘分别执行看看效果。