`rd /S`에 "디렉토리가 비어 있지 않음"이라고 표시되는 이유는 무엇입니까?

`rd /S`에 "디렉토리가 비어 있지 않음"이라고 표시되는 이유는 무엇입니까?

rd /S비어 있지 않은 디렉터리에서 실행하려고 하는데 때로는 잘 작동하지만 때로는 "디렉토리가 비어 있지 않습니다."라고 보고합니다. 이 오류가 발생하는 이유는 무엇입니까? Windows에서 파일과 하위 디렉터리로 가득 찬 폴더를 제거하는 안정적인 방법이 있습니까? PowerShell에도 Remove-Item이 문제가 있습니다.

답변1

새로 복사된 파일이 즉시 삭제되지 않도록 검색하고 잠그는 로컬 바이러스 백신 또는 인덱싱 서비스일 수 있습니다.

지연을 프로그래밍하고 실패하면 다시 시도합니다.

for (i = 1 to 10 etc...)
{
  try to remove directory
  if directory does not exist, break out of loop
  wait a second
}
if directory still exists, abort!

답변2

삭제되지 않은 빈 폴더에 숨겨진 파일이 포함되어 있거나 누군가가 여전히 해당 폴더를 사용하고 있을 가능성이 높습니다.

답변3

이 시도:

del c:\test\*.* /Q
rmdir c:\test /Q

답변4

rd /S비어 있지 않은 디렉토리에서 실행하려고 하는데 때로는 잘 작동하지만 때로는 보고됩니다.디렉터리가 비어 있지 않습니다.. 이 오류가 발생하는 이유는 무엇입니까?

숨겨진 파일이나 다른 권한이 필요한 파일이 포함되어 있기 때문입니다.

Windows에서 파일과 하위 디렉터리로 가득 찬 폴더를 제거하는 안정적인 방법이 있습니까?

폴더 안을 보면 알 수 있습니다무엇파일이 남아 있으니 수동으로 삭제할 수 있는지 확인하세요. 그렇지 않은 경우 다른 권한이 필요할 수 있습니다. 다음에서 실행해 보세요.상승된 명령 프롬프트.

PowerShell의 Remove-Item에도 이 문제가 있습니다.

권한 문제가 아닌 경우 강제로 실행할 수 있습니다.Remove-Item -Recurse -Force …

관련 정보