可以使用%*将值分配给批处理文件中的列表或数组吗?

时间:2016-11-08 09:29:03

标签: batch-file

%1是第一个命令行参数,%2是第二个命令行参数,依此类推,直到%9

%*指的是所有参数。有没有办法将这些值分配给列表,如下面提到的shell脚本中所做的那样?

argv=("$@")其中$@引用shell脚本中的所有命令行参数。

1 个答案:

答案 0 :(得分:4)

这样的事情? :

@echo off

setlocal enableDelayedExpansion
set arg_number=0
for %%a in (%*) do (
    set "args[!arg_number!]=%%a"
    set /a arg_number=arg_number+1
)

echo %args[0]%
echo %args[1]%
echo %args[2]%