dos if 条件判断

2019-09-19 06:58:45王振洲

if条件语句的完整格式是:if 条件表达式 (语句1) else (语句2)
它的含义是:如果 条件表达式 成立,就执行 语句1,否则,将执行 语句2。?  else后的 语句2 也可以不用括号括
起。

if条件语句的简单格式是:if 条件表达式 (语句)
它的含义是:如果 条件表达式 成立,将执行 语句,否则,什么都不做。条件表达式后的 语句 也可以不用括号括
起。

例15

@echo off 
if exist "d:123.txt" (del "d:123.txt")
pause

你也可以写成下面这样

例16

@echo off 
if exist "d:123.txt" del "d:123.txt"
pause

补充1:if not 语句
对于if 语句前面的5种基本语法,都可以加上not参数,如
1。if not "字符串1"=="字符串2" command 语句;
2。if not数值1 equ 数值2 command 语句;
3。If not exist filename command 语句;
4。if not defined 变量 command 语句;
5。if not errorlevel 数值 command 语句。

   在if 条件表达式 (语句) 语句,如没有not参数,默认是判断条件成立时,执行语句;如有not参数,判断条件失
败时,执行语句。

我们看一下下面的例子:

例17

@echo off
if exist "c:" (echo C盘存在) else echo C盘不存在
pause

执行后显示:C盘存在

例18

@echo off
if not exist "c:" (echo C盘存在) else echo C盘不存在
pause

执行后显示:C盘不存在

不会吧,例18中执行后显示:C盘不存在,这简值是在说瞎话了,那到底是什么回事呢?

if not exist "c:" (echo  C盘存在) else echo  C盘不存在
此语句中文意思:如果不存在C: 就执行显示C盘存在;否则<指的是存在C:>就执行显示C盘不存在。
注:if exist 意为如果存在,那么if not exist就是如果不存在

你的C盘当然是实实在在存在的啦,根椐上面的中文分得知,那执行例18后就显示为:C盘不存在  通过分析例18,你
应该明白if语句中not参数是怎么用了吧!


补充2:IF语句嵌套的写法,我们先来看看

例1

@echo off
set a=55
if %a% geq 50 (
  if %a% geq 80 (
    if %a% geq 100 (
      echo a大于等于100 
    ) else echo a小于100 
  ) else echo a小于80 
) else echo a小于50 
pause

这是一种比较规范的写法,那这种写法是怎样写的呢?那我们一步步的来:

第一步:

if %a% geq 50 ( ) else echo a小于50

第二步:在第一步geq 50 后面的括号()里按两下回车,主要是空两行出来。

if %a% geq 50 ( 
  if %a% geq 80 ( )else echo小于80
) else echo a小于50

第三步:在第二步geq 80 后面的括号()里按两下回车,主要是空两行出来。

相关文章 大家在看