programing

명령줄을 사용하여 디렉토리 및 해당 파일 삭제, 존재하지 않는 경우 오류 발생 안 함

lovejava 2023. 4. 29. 08:08

명령줄을 사용하여 디렉토리 및 해당 파일 삭제, 존재하지 않는 경우 오류 발생 안 함

디렉터리와 디렉터리에 포함된 모든 파일을 삭제하려면 Windows 명령이 필요하지만 디렉터리가 없는 경우 오류를 표시하지 않습니다.

의 출력을 리디렉션합니다.del널에게 명령합니다.참고:2오류 출력을 리디렉션해야 함을 나타냅니다. 질문과 특히 명령 리디렉션 연산자 사용 기술 문서를 참조하십시오.

del {whateveroptions} 2>null

또는 호출하기 전에 파일이 있는지 확인할 수 있습니다.del:

if exist c:\folder\file del c:\folder\file

사용할 수 있습니다.if exist c:\folder\(후행 포함)\)를 확인합니다.c:\folder파일이 아닌 폴더입니다.

stderr을 null로 리디렉션

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을 null로 리디렉션할 수 있습니다.

del filethatdoesntexist.txt 2>nul

위의 내용은 프롬프트에 Y 또는 N으로 표시됩니다.그래서 저는 대신 다음을 사용했고 완벽하게 작동합니다.

if exist cddd rmdir cddd

이것이 누군가에게 도움이 되기를 바랍니다.

건배.

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