批处理-嵌套循环、if-else、延迟变量、函数

批处理-嵌套循环、if-else、延迟变量、函数

:: 设置延迟变量,默认是关闭的
setlocal EnableDelayedExpansion
set project=12
set clientId=34
set module=a,b
set para=project,clientId
set commandList=
:: 调用command函数,生成命令字符串,用逗号分隔
:: commandList --module a --project 12 --clientId 34,--module b --project 12 --clientId 34
call:command module,para
echo commandList %commandList%

:: 按照逗号分隔,打印commandList
:: --module a --project 12 --clientId 34
:: --module b --project 12 --clientId 34

set index=1
for %%i in (%module%) do (
echo "!commandList:~0,-1!" "," !index!
call:split "!commandList:~0,-1!" !index!
set /a index=!index!+1
)
pause

:: 定义 command 函数,输入参数名集合,返回命令集合:根据module在根据para循环
:command
for %%i in (!%1!) do (
set c=--module %%i 
for %%j in (!%2!) do (
if !%%j! == "" (set c=!c!) else (set c=!c!--%%j !%%j! )
)
set commandList=!commandList!!c:~0,-1!,
)
goto :eof
:: 定义 split 函数,字符串X,由逗号分隔,的第n个字
:split 
for /F "tokens=%2 delims=," %%a in (%1) do (
echo %%a
)
goto :eof
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值