zoukankan      html  css  js  c++  java
  • 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 同行
        右括号 ) 后面加上续行操作符 ^

     【完】

  • 相关阅读:
    用 .Net WebBrowser 控件获取POST数据
    yield再理解--绝对够透彻
    Keras 和 PyTorch 的对比选择
    Keras -Python编写的开源人工神经网络库
    Python 加密之 生成pyd文件
    FPN全解-特征金字塔网络
    RetinaNet(Focal Loss)
    Focal Loss for Dense Object Detection(Retina Net)
    ImageNet Classification-darknet
    Darknet
  • 原文地址:https://www.cnblogs.com/xiongzaiqiren/p/11364452.html
Copyright © 2011-2022 走看看