%1
是第一个命令行参数,%2
是第二个命令行参数,依此类推,直到%9
。
%*
指的是所有参数。有没有办法将这些值分配给列表,如下面提到的shell脚本中所做的那样?
argv=("$@")
其中$@
引用shell脚本中的所有命令行参数。
答案 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]%