文章目录

  • 基本描述
  • If指令基本格式
  • 指令参数
  • 多分支语句 if else if
    • 1. if else if均在一行
    • 2. 右括号“(” 和else if 多行
    • 3. if 和 else if多行
  • If条件语句拓展功能
    • 1. If exist
    • 2. If defined
    • 3. if结合errorlevel使用

基本描述

在bat脚本中,if条件判断语句共有6种比较操作符,分别为

操作符(不区分大小写) 描述 全称
equ 等于 equal
neq 不等于 no equal
lss 小于 less than
leq 小于等于 leq less than or equal
gtr 大于 greater than
geq 大于等于 geq greater than or equal

其中,只有等于操作符可以使用符号 “==” 表示,其他操作符只能使用英文简写
当参与比较的字符串是字符串时,将被转换为对于的ASCII码进行比较

If指令基本格式

指令格式为:if 条件表达式 (…)
注意:

  1. 英文缩写的比较操作符,左右两边必须有空格;
    “==”两侧可以不加空格
  2. 比较表达式和()之间必须有空格
@echo off
Set inputValue=15
if %inputValue%==15 (echo %inputValue%等于15)
if %inputValue% equ15 (echo %inputValue%等于15)
pause

指令参数

判断字符串是否相等的时候,if语句会区分大小写
参数"/I(i)"可以在比较字符串时串忽略大小写;

@echo offif "abc"=="ABC" (echo 大小相等
) else (echo 大小不等
)if /i "abc"=="ABC" (echo 大小相等
) else (echo 大小不等
)
pause

多分支语句 if else if

1. if else if均在一行

@echo off
set inputValue=15
if %inputValue% gtr 100 (echo %inputValue%大于100) else if %inputValue% gtr 10 (echo %inputValue%大于10) else (echo %inputValue%小于或等于10)
pause

2. 右括号“(” 和else if 多行

右括号")"与 else之间空格可忽略

@echo offset inputValue=23if %inputValue% gtr 100 (echo 大于100
) else if %inputValue% gtr 10 (echo 大于10
) else if %inputValue% gtr 0 (echo 大于0
)
pause

3. if 和 else if多行

右括号")"后需跟 “^”

@echo offset inputValue=23if %inputValue% gtr 100 (echo 大于100
)^
else if %inputValue% gtr 10 (echo 大于10
)^
else if %inputValue% gtr 0 (echo 大于0
)
pause

If条件语句拓展功能

1. If exist

判断驱动器、文件夹或文件是否存在
注意:if后的变量要加 %%

@echo offset filepath=C:\
if exist %filepath% (echo %filepath%存在
)
if not exist %filepath% (echo %filepath%不存在
)set filepath=C:\Users\Administrator\Desktop
if exist %filepath% (echo 路径%filepath%存在
) else (echo 路径%filepath%不存在
)set sourcefile=C:\Users\Administrator\Desktop\test.bat
if exist %sourcefile% (echo 文件%sourcefile%存在
) else (echo 文件%sourcefile%不存在
)pause

2. If defined

判断某个变量是否已经被赋值
注意:if后的变量 不能加 %%

@echo offset /p filepath=请输入:
if defined filepath (echo filepath存在
)if not defined filepath (echo filepath不存在
)pause

3. if结合errorlevel使用

结果判断,说明:环境变量errorlevel的初始值为0,当一些命令执行不成功,就会返回一个数值,如:1 ,2 等

@echo offrem call "D:\VS Code\Microsoft VS Code\Code.exe"call  C:\Users\Administrator\Desktop\printf.batif %errorlevel%  == 0 (echo 前条执行成功
) else (echo 前条执行失败
)pause

Windows 批处理(bat) if条件判断语句使用教程相关推荐

  1. windows批处理(bat)程序常用命令

    windows批处理(bat)程序常用命令 开始之前先简单说明下cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码也是共用 ...

  2. Windows批处理中的if判断

    Windows批处理中的if判断 if 命令是批处理程序中条件判断的命令,根据得出的判断结果,执行相对应的操作. if 命令基本有以下几种用法 . 1.判断指定的文件名是否存在 IF [NOT] EX ...

  3. Python中if条件判断语句怎么用?

    俗话说"不积跬步无以至千里".学习了Python的基本语法后,接下来我们学习Python常的if条件判断语句. if语句是最简单的条件判断语句,它可以控制程序的执行流程,其使用格式 ...

  4. c#switch语句判断成绩_Go的条件判断语句

    现实时间中,我们如果想去购物,可以选择网上或者线下去购物,甚至说,要购买的物品都有许多选择,选价格便宜的,选质量好的,选不用运费等等 那么在计算机语言中,我们要怎么实现现实中,这些选择呢? Go语言支 ...

  5. golang if 条件判断语句 简介

    一:if判断语句的三种情况 ①:单分支 if 条件判断语句 { 执行语句 } ②:双分支 if 条件判断语句 { 执行语句 }else{ 执行语句 } ③:多分支 if 条件判断语句 { 执行语句 } ...

  6. python条件语句-Python中条件判断语句的简单使用方法

    最简单的条件语句: if expression: expr_true_suite 如上,if是关键字,expression是条件表达式,条件表达式支持多重条件判断,可以用布尔操作符and.or和not ...

  7. python判断语句_python条件判断语句if elif else使用

    假设网站现在有100个充值用户,现在要给充值1000元以上的大客户返现,那么就需要在程序里进行判断.这就用到了条件判断语句. 一.if语句 1.if语句长相: if条件表达式: 满足条件时要做的事情1 ...

  8. Python入门第三章--第一节:条件判断语句

    从这一节开始,我们就进入到了进阶的阶段,这一章是在前一章的基础上进行提高扩展的,从本章开始,我会在每一节的结尾留下作业,大家可以将作业提交到我的邮箱或者直接将作业提交到QQ群的群文件中,我将在QQ群中 ...

  9. Python中if条件判断语句的用法!

    俗话说"不积跬步无以至千里".学习了Python的基本语法后,接下来我们学习Python常的if条件判断语句. if语句是最简单的条件判断语句,它可以控制程序的执行流程,其使用格式 ...

最新文章

  1. 如何解决组织协同?用智办事更简单!
  2. 安利7款珍藏已久的windows软件,每一个都非常强大
  3. 利用python进行数据分析第二版学习笔记
  4. P1966 火柴排队
  5. java 20_java20 - 芥末小弟 - OSCHINA - 中文开源技术交流社区
  6. 一款好的折线图、饼图、柱形图
  7. Runtime.exec使用错误导致延迟.md
  8. Ajax模拟Form表单提交,含多种数据上传
  9. 浪潮服务器自带备份软件,备份软件DPS
  10. requests下载多张图片
  11. 600,000,002,200,300,400等开头的股票都是什么意思
  12. 用3ds max 2020制做一个VRay油漆木材材质
  13. 网络:七层,HTTP应用层、TCP传输层、IP网络层,拔网线TCP还在,三次握手保证双向与减少因延时传输错误
  14. 零售门店营业额预测分析(时间序列建模)
  15. “黑科技”(ipad + termius + 100 元的蓝牙键盘)
  16. 如何提取PDF文件中的一页或几页——转载,真好用
  17. 使用jira管理Scrum敏捷项目实战(四)jira自定义电子看板、敏捷看板、KANBAN配置
  18. java SSM 框架 多数据源
  19. (一)Qt Quick Hello World
  20. 2021-10-19 学习笔记 什么是 JK 触发器?

热门文章

  1. java rewind()_Java NIO Buffer的clear()、reset()、rewind()、flip()方法的区别
  2. AB测试-A/B Test
  3. 南京邮电大学微型计算机原理与接口技术实验,南京邮电大学《微机原理与接口技术》上机实验参考答案(四次全).pdf...
  4. mcnpf5输出结果_MCNP及使用.ppt
  5. M-LAG—跨设备链路聚合组
  6. pytest测试框架——allure报告
  7. 直播预告 | 小姐姐来了·冠军分享暨百度人工智能开源大赛培训
  8. ARM Cortex-M3内核结构
  9. 不让粘贴的数字在excel中以科学计数法形式显示
  10. 权重衰减weight_decay参数从入门到精通