Un script por lotes es un conjunto de instrucciones o un script para SOS y el sistema operativo Windows. Podemos escribirlos en el CMD línea a línea o podemos crear un archivo con extensión “.bat” o “.cmd” . El archivo puede contener instrucciones válidas para ser ejecutadas por el intérprete. El significado de lote es la ejecución no interactiva de las instrucciones. Podemos agregar bloques de programación lógicos y condicionales en dichos scripts.
Iterando sobre arreglos
Es necesario iterar sobre las arrays para escribir menos scripts de código que se puedan mantener. Necesitamos iterar los elementos de la array uno por uno o en un patrón particular de tal manera que no tengamos que repetir manualmente los elementos. Podemos lograr esto de las siguientes maneras.
Método 1:
@echo off set list="foo" "bar" "baz" (for %%a in (%list%) do ( echo %%a ))
En este enfoque, estamos utilizando bucles for basados en rangos, es decir, iteraremos sobre la array hasta que esté vacía, de ahí la palabra, for .. in… Así que después de la sintaxis del bucle for podemos decir la palabra clave, do para ejecutar los comandos hasta el bucle es iterable. El contenido de la array en cada índice se almacena en la variable «a», que puede ser cualquier cosa igual de sensata.
Ahora, usando este enfoque, podemos iterar sobre arreglos usando el iterador y luego podemos hacer eco de ellos. También podemos modificar los contenidos accediendo a la array original y al índice del elemento.
Método 2:
@echo off set x[0]=cricket set x[1]=football set x[2]=hockey set x[3]=golf set x[4]=volleyball for /L %%a in (0,1,4) do call echo %%x[%%a]%%
Lo anterior crea una array de tamaño 5 pero puede tener cualquier longitud, la iteración se realiza en un comando de una sola línea pero es un proceso de varios pasos. Primero, /L en el ciclo for permitirá iterar a través de los elementos del arreglo. El rango (0,1,4) son los índices de inicio, incremento y fin de la lista. Es decir, comenzamos con el índice 0 e incrementamos 1 después de cada bucle hasta llegar al número 4 en el índice de la lista.
Después de eso, tenemos un cuerpo de bucle en línea, que llama a los comandos para hacer eco e imprimimos el valor de x[a] donde x es la variable de array y a es el iterador en el bucle, encerramos la variable en «%%» para obtener el valor de la variable real que se analiza. También usamos » %% » antes del iterador para analizar el valor del iterador mismo y el » %% » adjunto alrededor de la variable para obtener el valor de let’s decir » lista [0] «.
Tomemos un ejemplo de iteración a través de algunos elementos de la array:
@echo off set x[0]=cricket set x[1]=football set x[2]=hockey set x[3]=golf set x[4]=volleyball for /L %%a in (1,1,3) do call echo %%x[%%a]%%
Aquí, no imprimimos todos los elementos de la array. Usamos el rango como (1,1,3) que itera desde el índice 1 hasta el 3 uno por uno. Por lo tanto, podemos lograr múltiples combinaciones con las iteraciones de la array.