CMD의 중첩된 For 문

CMD의 중첩된 For 문

현재 cmd 스크립트에서 일부 파일을 삭제하는 데 문제가 있습니다.

나는 다음을 가지고 있습니다 :

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

출력 파일을 삭제해야 하지만 나열하지 마세요.

나는 시도했다:

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

하지만 효과가 없었어요

답변1

%%B예를 들어 for /d %%Ain ( C:\Users*) do for /d %%Bin %%A\test*do 주위에 따옴표를 추가하세요 .del "%%B"

답변2

Max의 답변 외에도 괄호를 사용하여 배치 파일을 더 쉽게 읽을 수도 있습니다. 또한 소문자 변수 이름을 사용해야 합니다.

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

관련 정보