Program Tip

명령 줄을 사용하여 디렉토리와 파일을 삭제하지만 존재하지 않는 경우 오류가 발생하지 않습니다.

programtip 2020. 11. 1. 18:31
반응형

명령 줄을 사용하여 디렉토리와 파일을 삭제하지만 존재하지 않는 경우 오류가 발생하지 않습니다.


디렉터리 및 포함 된 모든 파일을 삭제하려면 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

참고 URL : https://stackoverflow.com/questions/14502612/delete-a-directory-and-its-files-using-command-line-but-dont-throw-error-if-it

반응형