Verschachtelte For-Anweisung in CMD

Verschachtelte For-Anweisung in CMD

Ich habe derzeit Probleme beim Versuch, einige Dateien in einem cmd-Skript zu löschen

Ich habe folgendes:

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

Obwohl ich die Ausgabedateien löschen muss, nicht auflisten

Ich habe versucht:

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

Aber es hat nicht funktioniert

Antwort1

Setzen Sie Anführungszeichen um %%Bz. B. for /d %%Ain ( C:\Users*) do for /d %%Bin %%A\test*dodel "%%B"

Antwort2

Zusätzlich zu Max‘ Antwort können Sie auch Klammern verwenden, um die Batchdatei leichter lesbar zu machen. Sie sollten auch Variablennamen in Kleinbuchstaben verwenden.

@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"
    )
)

verwandte Informationen