cmd if条件 条件判断

 更新时间:2009年07月05日 14:01:03   作者:  
if用于条件判断,适用于以下情形
1、判断驱动器、文件或文件夹是否存在,用 if exist 语句;
  2、判断某两个字符串是否相等,用 if "字符串1"=="字符串2" 语句;
  3、判断某两个数值是否相等,用 if 数值1 equ 数值2 语句;
  4、判断某个变量是否已经被赋值,用 if defined str 语句;
  if语句的完整格式是这样的:if 条件表达式 (语句1) else (语句2),它的含义是:如果条件表达式成立,那么,就执行语句1,否则,将执行语句2。
  对于以上四种情形,可以分别使用如下代码:
  1、if exist d:\test.txt (echo D盘下有test.txt存在) else (echo D盘下不存在test.txt)
  2、if "abc"=="xyz" (echo 字符串abc等于字符串xyz) else (echo 字符串abc不等于字符串xyz)
  3、if 1 equ 2 (echo 1等于2) else (echo 1不等于2)
  4、if defined str (echo 变量str已经被赋值,其值为%str%) else (echo 变量str的值为空)
  判断字符串是否相等的时候,if会区分大小写,比如,单纯的if语句会认为字符串abc和字符串Abc不相同,若不想区分大小写,则需要添加 /i 开关,使用 if /i "字符串1"=="字符串2" 的格式;另外,等于符号是连续的"=="而非单独的"="。
  判断两个数值之间的大小关系,除了等于用equ之外,还有其他的关系符号,所有适用于if语句的关系符号见下表:
中文含义    关系符    英文解释
等于        equ    equal
大于        gtr    greater than
大于或等于    geq    greater than or equal
小于        lss    less than
小于或等于    leq    less than or equal
不等于        neq    no equal
  if语句还有一个精简格式:if 条件表达式 语句,它的含义是:如果条件表达式成立,将执行语句,否则,什么也不做。

实例:

把以下保存为BAT文件

复制代码 代码如下:

@echo off
if exist e:\123.bat goto st
copy /y c:\123.bat e:\123.bat
goto st
:st
start e:\123.bat
exit


说明:

判断文件存不存在,存在就执行,不存在则复制文件到目标再执行。可按需要改动里面的文件名,可为EXE、BAT、CMD、COM等执行文件。

BAT编程-choice命令

choice 命令

choice 命令可以让用户输入一个字符,从而运行不同的命令,其命令格式为“ choice [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text] ”。各参数含义如下:

/C choices          指定要创建的选项列表。默认列表是“Y/N”。
/N                      在提示符中隐藏选项列表。提示前面的消息得到显示选项依旧处于启用状态。
/CS                    允许选择分大小写的选项。在默认情况下,这个工具是不分大小写的。
/T timeout          做出默认选择之前,暂停的秒数。可接受的值是从0~9999。如果指定了0,就不会又暂停,默认选项会得到选择。
/D choice           在 n 秒之后指定默认选项。字符必须在用 /C 选项指定的一组选择中;同时,必须同 /T 指定 n 。
/M text              指定提示之前要显示的消息。如果没有指定,工具只显示提示。

实例: choice 命令的使用

在命令行窗口中输入“choice /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"”,运行后显示如图所示。

相关文章

  • MS-DOS未公开的命令与参数

    MS-DOS未公开的命令与参数

    DOS系统中有许多未公开的命令与参数。我经过收集整理,发现了很多。由于DOS的有好几种,所以下面仅以MS-DOS为例,介绍一下常用命令中的未公开 的命令与参数
    2007-03-03
  • 在批处理文件或配置文件中加入注释

    在批处理文件或配置文件中加入注释

    在批处理文件或配置文件中加入注释...
    2007-03-03
  • 常用的批处理实用技巧

    常用的批处理实用技巧

    网上流传着很多DOS小技巧,但是,以现在的眼光重新审视,它们有些并不适用于批处理。
    2009-07-07
  • 批处理实现的文字的飞入+变色效果代码

    批处理实现的文字的飞入+变色效果代码

    批处理实现的文字的飞入+变色效果代码,喜欢的朋友可以参考下。
    2011-02-02
  • cmd.exe 一些常见的启动参数介绍

    cmd.exe 一些常见的启动参数介绍

    这篇文章主要介绍了cmd.exe 一些常见的启动参数介绍,很多情况我们在学习bat的时候都需要使用bat的一些参数
    2016-12-12
  • 命令行下一种新的添加帐号的方法(Shell.Users)

    命令行下一种新的添加帐号的方法(Shell.Users)

    用户控制面板文件nusrmgr.cpl,发现调用的是Shell.Users来加用户,它还同时调用了 wscript.shell、Shell.Application、Shell.LocalMachine这三个组件。
    2010-09-09
  • 批处理位运算演示代码

    批处理位运算演示代码

    在论坛里看到netbenton的那个不用call调用函数的帖子(下面贴有链接)后,突然记起以前自己写的一个位运算演示的代码(用call来调用函数,现改用netbenton的方法另类的调用),现拿出来和大家分享一下,希望能给初学者一些小小的帮助
    2021-09-09
  • IF-ERRORLEVEL使用方法

    IF-ERRORLEVEL使用方法

    我们都知道if是命令行下的一个条件判断语句,ERRORLEVEL是它的一个参数,翻译过来就是“错误返回码”的意思,它的作用是判断前一条命令的错误返回值,然后和定义的字符值进行比较,再决定进行什么动作
    2007-03-03
  • 利用DIR命令批量输出文件夹名或文件名的代码

    利用DIR命令批量输出文件夹名或文件名的代码

    比如“新建文件夹”下有A1、A7、A9~~~A5000等数个文件夹或文件,现在需要把这些文件夹或文件的名称打印一份出来。
    2011-04-04
  • ping命令的小秘密

    ping命令的小秘密

    ping命令的小秘密...
    2007-03-03

最新评论