El for
comando necesita un marcador de posición para que pueda pasar variables para su uso más adelante en la consulta, le decimos que use el marcador de posición %A
, la razón por la que el código que vio %%A
se debe a que dentro de un archivo por lotes (que supongo es donde encontró esto) el %
tiene un significado especial, por lo que debe hacerlo dos veces %%
para que se convierta en un solo %
para pasar al for
comando
Para separar realmente lo que está haciendo el comando, el comando tiene dos partes:
for /D %%A in (*) do .....
Lo que dice esta parte es que para cada carpeta en la carpeta actual ejecute el siguiente comando reemplazando %%A
con el nombre de la carpeta que se está procesando actualmente.
..... "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
Lo que dice esta parte es ejecutar el comando "\7za.exe" u -t7z -m9=LZMA2 "%%A.7z" "%%A"
y reemplazar los dos %%A
con el registro actual que estamos procesando.