当前位置:首页 > 知道中心 > Windows > 文章

批处理命令详解(二)

发表于:2013-09-08| 次阅读| 作者:藕码网
TAG: Windows
摘要:批处理命令详解(二)
8.if 命令
  if语句实现条件判断,包括字符串比较、存在判断、定义判断等。通过条件判断,if语句即可以实现选择功能。   
(1)字符串比较   
  if语句仅能够对两个字符(串)是否相同、先后顺序进行判断等。
  语法:if [not] string1 compare-op string2 command1 [else command2]   
    其中,比较操作符compare-op有以下几类:   
          ==          等于   
          EQU         等于   
          NEQ         不等于   
          LSS         小于   
          LEQ         小于或等于   
          GTR         大于   
          GEQ         大于或等于   
    选择开关/i表示不区分字符串大小写;选择not项,则对判断结果进行逻辑非。   
  字符串比较举例:@echo off   
                    set str1=abcd1234   
                    set str2=ABCD1234   
                    if %str1%==%str2% (echo 字符串相同!)
                        else (echo 字符串不相同!)   
                    if /i %str1% LSS %str2% (echo str1^                         else (echo str1^>=str2)  
(2)存在判断   
  存在判断的功能是判断文件或文件夹是否存在。
  语法:if [not] exist filename command1 [else command2]
  存在判断举例:@echo off   
                  if exist %0 echo 文件%0是存在的!   
                  if not exist %~df0 (echo 文件夹%~df0不存在!
                  )else echo 文件夹%~df0存在!   
                  pause   
  几点说明:   
        1)存在判断既可以判断文件也可以判断文件夹;   
        2)%0即代表该批处理的全称(包括驱动器盘符、路径、文件名和扩展类型);   
        3)%~df0是对%0的修正,只保留了其驱动器盘符和路径,详情请参考for /?,属高级批处理范畴;   
        4)注意if语句的多行书写,多行书写要求command1的左括号必须和if在同一行、else必须和command1的右括号同行、command2 的左括号必须与else同行、command1和command2都可以有任意多行,即command可以是命令集。   
(3)定义判断   
  定义判断的功能是判断变量是否存在,即是否已被定义。
  语法:if [not] defined variable command1 [else command2]   
  存在判断举例:@echo off   
                  set var=111   
                  if defined var (echo var=%var%
                  ) else echo var尚未定义!   
                  set var=   
                  if defined var (echo var=%var%
                  ) else echo var尚未定义!   
                  pause


注:本站部分信息可能源于互联网分享,如有侵权,请告知,我们将及时删除!

  • 用户评论
  • 相关文章