디렉터리 및 포함 된 모든 파일을 삭제하려면 Windows 명령이 필요하지만 디렉터리가 존재하지 않는 경우 오류를보고 싶지 않습니다.
답변
del
명령 출력 을 nul로 리디렉션합니다 . 를 참고 2
오류 출력을 리디렉션 할 나타냅니다. 이 질문 , 특히 명령 리디렉션 연산자 사용 기술 문서를 참조하십시오 .
del {whateveroptions} 2>nul
또는 다음을 호출하기 전에 파일 존재를 확인할 수 있습니다 del
.
if exist c:\folder\file del c:\folder\file
파일이 아닌 폴더 인지 확인하기 위해 if exist c:\folder\
(뒤에 \
)를 사용할 수 있습니다 c:\folder
.
답변
stderr을 nul로 리디렉션하십시오.
rd /q /s "c:\yourFolder" 2>nul
또는 삭제하기 전에 폴더가 있는지 확인하십시오. 후행 \
은 IF 조건에서 중요합니다.
if exist "c:\yourFolder\" rd /q /s "c:\yourFolder"
답변
Windows 10에서 다음은 훌륭하게 작동합니다.
if exist <path> rmdir <path> /q /s
q
“요청하지 않고 삭제”를 s
의미하고 “그 안에있는 모든 하위 폴더 및 파일 삭제 “를 의미합니다.
명령을 연결할 수도 있습니다.
(if exist <path> rmdir <path> /q /s) && <some other command that executes after deleting>
답변
stderr을 nul로 리디렉션 할 수 있습니다.
del filethatdoesntexist.txt 2>nul
답변
위의 내용은 프롬프트에서 Y 또는 N으로 표시됩니다. 그래서 대신 다음을 사용했는데 완벽하게 작동합니다.
if exist cddd rmdir cddd
이것이 누군가를 돕기를 바랍니다.
건배.