Batch-Script - Iterar a través de argumentos
Tengo un script por lotes con múltiples argumentos. Estoy leyendo el recuento total de ellos y luego ejecuto un bucle for así:
@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 )
Lo que quiero hacer ahora es usar mi variable de ejecución (x
ocounter
) para acceder a los argumentos de entrada. Estoy pensando en algo como esto:
REM Access to %1
echo %(!counter!)
En un mundo ideal, esta línea debería imprimir mi primer argumento de línea de comandos, pero obviamente no lo hace. Sé que estoy haciendo algo mal con el%
operador, pero ¿hay alguna forma de que pueda acceder a mis argumentos como este?
// edit: solo para aclarar las cosas - el problema es que%(!counter!)
Me proporciona el valor de la variable.counter
. Significado paracounter=2
me da2
y no el contenido de%2
.