加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

batch-file – 如何在bat文件中添加可选的命令行参数(windows)

发布时间:2020-12-14 04:10:55 所属栏目:Windows 来源:网络整理
导读:我有一个批处理文件,下面的参数是硬编码的 SET upgrade=false 我想给用户一个明确定义upload参数的选项.默认情况下它应该是false,如果用户明确定义upgrade = true,我应该将其视为true. 我还想检查upload参数中boolean值的验证. 我是批处理文件处理的新手.我
我有一个批处理文件,下面的参数是硬编码的

SET upgrade=false

我想给用户一个明确定义upload参数的选项.默认情况下它应该是false,如果用户明确定义upgrade = true,我应该将其视为true.

我还想检查upload参数中boolean值的验证.

我是批处理文件处理的新手.我试过了默认值处理.

if "%2"=="" goto false

:false
SET upgrade=false
检查变量是否存在.如果不存在,则假设为假.任何与“true”不同的值都被认为是假的
if not defined upgrade set upgrade=false
if not "%upgrade%"=="true" set upgrade=false

当升级变量需要为true时,在调用批处理文件之前定义它,或者从命令行使用第二个批处理文件来调用第一个具有值集的批处理文件.

因此,主批(ej.doWork.cmd)文件将会显示

@echo off
    .... work work work ...
    if not defined upgrade set upgrade=false
    if not "%upgrade%"=="true" set upgrade=false
    .... work work work ...

当您需要从另一个配置开始(在此示例中执行升级)时,您需要从命令行配置变量

set upgrade=true 
doWork.cmd

或者你可以创建第二个cmd来做同样的事情(ej.doWorkWithUpload.cmd)

@echo off
    set upgrade=true
    call doWork.cmd

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读