我有一个带有多个参数的批处理脚本。我正在读取它们的总数,然后像这样运行一个 for 循环:
@echo off
setlocal enabledelayedexpansion
set argCount=0
for %%x in (%*) do set /A argCount+=1
echo Number of processed arguments: %argCount%
set /a counter=0
for /l %%x in (1, 1, %argCount%) do (
set /a counter=!counter!+1 )
我现在想要做的是使用我的运行变量(x
或counter
)来访问输入参数。我在想这样的事情:
REM Access to %1
echo %(!counter!)
在理想的世界中,这条线应该打印出我的第一个命令行参数,但显然它没有。我知道我对操作员做错了什么%
,但是无论如何我可以像这样访问我的参数吗?
//编辑:只是为了让事情清楚 - 问题是它%(!counter!)
为我提供了变量的值counter
。它的含义counter=2
给了我2
,而不是%2
.