Declaración anidada para en CMD

Declaración anidada para en CMD

Actualmente tengo problemas al intentar eliminar algunos archivos en un script cmd

Tengo lo siguiente:

for /d %%A in (C:\Users\*) do for /d %%B in (%%A\test\*) do echo %%B

Aunque necesito eliminar los archivos de salida, no enumerarlos

Yo he tratado:

for /d %%A in (C:\Users\*) do for /d %%B in (%%A\test\*) do del %%B

Pero no funcionó

Respuesta1

Agregue comillas alrededor %%B, por ejemplo, for /d %%Ain ( C:\Users*) do for /d %%Bin %%A\test*dodel "%%B"

Respuesta2

Además de la respuesta de Max, también puede utilizar paréntesis para que el archivo por lotes sea más fácil de leer. También debes utilizar nombres de variables en minúsculas.

@echo off
setlocal EnableDelayedExpansion  

for /d %%a in (C:\Users\*) do (
    rem echo "directory: %%a"
    for /f %%b in ("%%a\test\*") do (
        echo "%%b"
        del "%%b"
    )
)

información relacionada