bat脚本里面if else if的写法
曾经困扰了很久的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 同行
右括号 ) 后面加上续行操作符 ^
【完】
bat脚本里面if else if的写法的更多相关文章
- 批处理(.bat脚本)基本命令语法
.bat脚本基本命令语法 目录批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1.REM 和 :: 2.ECHO 和 @ 3.PAUSE 4.ERRORL ...
- Android手机上,利用bat脚本模拟用户操作
………… 那么你就可以来看看这篇帖子了. 言归正传 利用bat脚本模拟用户操作,需要用到两点: ①就是adb命令了,adb命令可以用来模拟用户在手机上的操作 ②bat语言,就是批处理语言,主要用来进行 ...
- [BAT脚本] 1、BAT脚本FOR循环操作文件和命令返回实例
Wednesday, 31. October 2018 08:18PM - beautifulzzzz 一.需求 需要在windows上实现一个bat脚本解析json,将json转换为自己想要的key ...
- bat脚本的基本命令语法
bat脚本的基本命令语法 一.批处理的常见命令 1.REM 和 :: 2.ECHO 和 @ 3.PAUSE 4.ERRORLEVEL 5.TITLE 6.COL ...
- bat 脚本之 使用函数
bat 脚本之 使用函数 摘自:https://blog.csdn.net/peng_cao/article/details/73999076 2017年06月30日 15:06:37 pengcao ...
- Bat 脚本学习 (基础篇)
[转]Bat 脚本学习 2015-01-05 14:13 115人阅读 评论(0) 收藏 举报 基础部分: ============================================== ...
- BAT脚本编写要点_特殊字符
BAT脚本编写要点(1)_特殊字符 分类: 其他 2011-03-20 00:58 5621人阅读 评论(0) 收藏 举报 脚本cdatecmdtreesystem 1. 点 与echo连用,作用是换 ...
- bat脚本参数 if goto choice for使用的学习笔记。
写过几次bat脚本,但一直没有总结,最近找到一个网页介绍bat,总结得很好,转自 http://www.jb51.net/article/49627.htm: 本文只总结我不会的,全面的看原网页就可以 ...
- [转]Bat脚本处理ftp超强案例解说
Bat脚本处理ftp超强案例解说 转自:http://369369.blog.51cto.com/319630/842341 前言: 公司有几百台windows服务器,每次程序更新,如果是一台 ...
随机推荐
- 自动化部署-svn hook触发构建
目的 之前是通过轮询的形式,2分钟更新一次svn,即时性不高,现在想要实现提交代码时直接触发构建 方案 使用svn的服务器hook,当有代码提交时请求jenkins api实现构建 具体实现 1.je ...
- 2017年蓝桥杯B组C/C++决赛题目
2017年第八届蓝桥杯B组C/C++决赛题目 点击查看2017年蓝桥杯B组C/C++决赛题解 1.36进制 对于16进制,我们使用字母A-F来表示10及以上的数字. 如法炮制,一直用到字母Z, ...
- RabbitMQ学习笔记(一、消息中间件基础)
目录: 什么是消息中间件 消息中间件的作用 JMS规范 AMQP协议 RabbitMQ简介 Hello World 什么是消息中间件: 消息中间件(Message Queue Middleware,简 ...
- Django之ContentType,GenericRelation, GenericForeignKey
contenttypes 是Django内置的一个应用,可以追踪项目中所有app和model的对应关系,并记录在ContentType表中. models.py文件的表结构写好后,通过makemigr ...
- linux常用终端命令
01. 终端命令格式 command [-options] [parameter] 说明: command:命令名,相应功能的英文单词或单词的缩写 [-options]:选项,可用来对命令进行控制,也 ...
- bioawk
https://github.com/lh3/bioawk 1.基本思想 使用: usage: bioawk [-F fs] [-v var=value] [-c fmt] [-tH] [-f pro ...
- Python源码:字典
一.创建增加修改 1.实现代码 #创建 stu_info = { "xiedi":28, "liuhailin":27,"daiqiao": ...
- 深度解密Go语言之context
目录 什么是 context 为什么有 context context 底层实现原理 整体概览 接口 Context canceler 结构体 emptyCtx cancelCtx timerCtx ...
- 转:xcode项目打不开:incompatible project version问题
这个是xcode版本对应不上,不一定要修改版本,我们修改记录版本的文件里面的版本号就行了. 低版本xcode打开高版本xcode项目或库工程的时候就会出现,打不开的问题 解决 1可以重建创建工程,将文 ...
- Python连载22-调试&单元测试
一.调试技术 (1)调试流程:单元测试->集成测试->交测试部 (2)分类:i.静态调试(说白了就是看代码,看看有没有错):ii.动态测试 1.pdb调试 相关连接:https://b ...