Windows CMD에서 파일 또는 폴더를 재귀 적으로 삭제


135

명령 줄에서 Windows의 파일 또는 폴더를 재귀 적으로 삭제하려면 어떻게합니까?

우리가 경로를 명령 줄에서 운전 하고이 명령을 실행하는 곳 에서이 솔루션을 찾았습니다.

.svn 파일 확장자 폴더를 예로 들어 보겠습니다.

for /r %R in (.svn) do if exist %R (rd /s /q "%R")

"우리가 운전하는 경로" 는 무엇을 의미 합니까?
Peter Mortensen

답변:


129

다음 단계를 수행하십시오.

  1. 명령 프롬프트를 엽니 다
  2. 디렉토리를 필요한 경로로 변경
  3. 다음 명령을 내리십시오

    del /S *.svn
    

4
나를 위해 작동하지 않으면 현재 디렉토리의 파일 만 삭제됩니다.
delphirules

119

다른 답변은 저에게 효과가 없었지만 이것은 효과가있었습니다.

del /s /q *.svn
rmdir /s /q *.svn

/ q는 예 / 아니요 프롬프트를 비활성화합니다

/ s 는 모든 하위 디렉토리에서 파일을 삭제함을 의미합니다.


내 요구는 당신이하려는 것과 동일하다고 생각합니다. 프로젝트 디렉토리와 모든 하위 디렉토리의 모든 .svn 폴더를 삭제하려고합니다. Windows 2012에서는이 답변이 효과가 없습니다. 현재 디렉토리에서 .svn 폴더를 삭제하지만 하위 디렉토리에서는 삭제하지 않습니다.
Jim

42

bat스크립트 에서 이것을 사용할 수 있습니다 :

rd /s /q "c:\folder a"

이제 c:\folder a폴더 위치로 변경 하십시오. 폴더 이름에 공백이있는 경우에만 인용이 필요합니다.


이 명령이 작동하지 않고 아래와 같이 오류가 발생합니다. D : \> rd / s / q "D : \ Root a"시스템이 지정된 파일을 찾을 수 없습니다.
abhayk

5
디렉토리에 실제로 space a이름이 없다면, 그 부분을 제외하십시오.
Jesse Chisholm

22
RMDIR path_to_folder /S

전의. RMDIR "C:\tmp" /S

"C : \ tmp"폴더를 실제로 삭제하려면 메시지가 표시됩니다. / Q 스위치를 결합하면 자동으로 폴더를 제거합니다 (예를. RMDIR "C:\tmp" /S /Q)


8

파일 삭제를 위해 다음과 같은 간단한 배치 파일을 작성하여 모든 .pdf를 재귀 적으로 삭제했습니다.

del /s /q "\\ad1pfrtg001\AppDev\ResultLogs\*.pdf"
del /s /q "\\ad1pfrtg001\Project\AppData\*.pdf"

로컬 디렉토리에서도 다음과 같이 사용할 수 있습니다.

del /s /q "C:\Project\*.pdf"

동일은 우리가 변경해야 할 디렉토리 삭제를 위해 적용 할 수있는 델을 함께 RMDIR .


4

특정 확장명을 재귀 적으로 삭제하려면 다음을 사용하십시오.

For /R "C:\Users\Desktop\saleh" %G IN (*.ppt) do del "%G"

3

당신은 또한 할 수 있습니다 :

del /s /p *.{your extension here}

/p당신이 안 뭔가를 삭제하는 방법에 대한 긴장이 있다면, 발견 된 각 파일에 대한 메시지를 표시합니다.


2

Windows rmdir 명령을 사용하십시오.

즉, rmdir / S / Q C : \ Temp

나는 또한 몇 년 동안 완벽하게 아래 것들을 사용하고 있습니다.

forfiles /?를 사용하여 다른 옵션을 확인하십시오 .

Windows 폴더에서 SQM / Telemetry를 재귀 적으로 삭제

forfiles /p %SYSTEMROOT%\system32\LogFiles /s /m *.* /d -1 /c "cmd /c del @file"

재귀 적으로 Windows TMP 파일 삭제

forfiles /p %SYSTEMROOT%\Temp /s /m *.* /d -1 /c "cmd /c del @file"

재귀 적으로 사용자 TEMP 파일 및 폴더 삭제

forfiles /p %TMP% /s /m *.* /d -1 /c "cmd /c del @file"


2

기본 명령으로 폴더를 완전히 지우고 수행 한 작업에 대한 로그를 가져옵니다.

특별한 방법은 다음과 같습니다.

d : \ temp 디렉토리를 지우고 싶다고 가정 해 봅시다.

mkdir d:\empty
robocopy /mir d:\empty d:\temp
rmdir d:\empty

이것은 내 문제를 해결 한 매우 영리한 솔루션입니다. 자체 참조 정션을 생각하지 않고 robocopy를 사용하여 AppData 디렉토리를 복사했습니다. 이것이 숨겨진 모든 파일을 재귀 적으로 제거 할 수있는 유일한 방법이었습니다. / xj를 잊지 마십시오!
Chris Larabell

0

숨겨진 파일의 경우 다음을 사용해야했습니다.

DEL /S /Q /A:H Thumbs.db

시대에 뒤쳐진. Microsoft는 Windows XP를 더 이상 지원하지 않습니다.
Mesalcode

백업 복원 (윈도우 10)에서 남은 .dcm 파일을 삭제하기 위해 이것을 사용해야했습니다.
Gerald Murphy

0
dir /b %temp% >temp.list
for /f "delims=" %%a in (temp.list) do call rundll32.exe advpack.dll,DelNodeRunDLL32 "%temp%\%%a"
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.