bat脚本里面if else if的写法
2024-09-05 14:06:48
曾经困扰了很久的bat脚本,如果里面包含多种条件判断,就必须要试用if,else if,else的写法了。尝试了很久,终于找到规律:
第一种写法:最简单,就是写一行。
@echo off
rem 写一行比较简洁,缺点是每一种判断内不方便写多条语句
set varA=B
if "%varA%"=="A" (echo %varA% is A) else if "%varA%"=="B" (echo %varA% is B) else (echo %varA% is C) pause
第二种写法:可读性好的语法是分行写
@echo off
rem 在这种写法可读性好,也能执行多语句,但兼容性不太好
set varA=B
if "%varA%"=="A" (
echo %varA% is A
echo AAA
) else if "%varA%"=="B" (
echo %varA% is B
echo BBB
) else (
echo %varA% is C
echo CCC
) pause
第三种写法:可读性好的语法是分行写的加强版
@echo off
rem 可读性好,兼容性好 setlocal EnableDelayedExpansion
set option=2
set sum=-1 if %option% == 3 (
echo three
set /a sum=%option%*%option%*%option%
) ^
else if %option% == 2 (
echo two
set /a sum=2*%option%
) ^
else if %option% == 1 (
echo one
set /a sum=%option%
) ^
else (
echo zero
set /a sum=0
) echo sum = !sum! pause
分行书写总结规则:
if 语句与左括号 ( 同行
右括号 ) 不与 else if 同行
右括号 ) 后面加上续行操作符 ^
【完】
最新文章
- pip install 安装python-requests
- 理解JavaScript中的事件处理
- VS调试Ajax
- 3-5 RPM包校验
- LaTex中让页码从正文开始编号
- Universal-Image-Loader 示例 工具
- 面试前的准备---C#知识点回顾----01
- Asp.net 获取图片列表并打包下载
- iOS开发之AutoLayout中的Content Hugging Priority和 Content Compression Resistance Priority解析
- 关于flex布局【转】
- TypeScript 函数-函数类型
- AI应用开发实战
- [转帖]内置系统账户:Local system/Network service/Local Service 区别
- SQLServer 2008 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时。
- Python核心团队计划2020年停止支持Python2,NumPy宣布停止支持计划表
- POJ 1470 Closest Common Ancestors (模板题)(Tarjan离线)【LCA】
- Area POJ - 1265 -皮克定理-叉积
- AWVS基本用法
- 搭建cdh单机版版本的hive所遇到的问题总汇
- 使用PHP类库PHPqrCode生成二维码