윈 도 우 cmd 배치 (삭제)???
2019.07.03 17:14
안녕하세요...
%Temp% 에 있는 모든 파일들과 서브폴더들 (속성 무시)을 삭제하는 cmd 배치를 작성하려고 합니다.
RD /S /Q 명령이 좋은데 %Temp% 폴더 자체도 삭제되어서 곤란하고... (삭제후 다시 만드는 것은 곤란함)
DEL /F /S 명령은 파일들만 삭제되고 서브폴더들이 처리가 안되니 문제고.....
이 경우 어떤 명령이 적당한 지 궁금합니다..
댓글 [8]
-
아무개님 2019.07.03 17:20
-
내꼬 2019.07.03 17:55 사용중인 폴더/파일은 삭제가 안됩니다
del temp /s /f /q
rd temp /s /q
*** temp 폴더 경로 확인 필수
사용중인 파일/폴더 빼고
파일삭제 -> 폴더삭제 순으로 정리가 되네요
-
suk 2019.07.03 18:10
폴더와 파일을 따로 처리하시면 될 겁니다.
for /f "tokens=*" %%a in ('dir /a:d/b "%Temp%\"') do rd /q/s "%Temp%\%%a"
for /f "tokens=*" %%a in ('dir /a:-d/b "%Temp%\"') do del /f/a/q "%Temp%\%%a"저도 Temp 는 아니지만 특정 폴더 내의 폴더와 파일을 삭제할 때 사용하고 있습니다.
%%a 으로 되어 있어서 bat 이나 cmd 파일에서 사용하셔야 됩니다. cmd 창에서는 %a로 1개만 하셔야 작동합니다.
위에 쓴대로 cmd 창이라서 %a 한개로 전부 수정하여 테스트 해봤습니다. 그리고 %Temp% 부분도 전부 특정 폴더로 수정했습니다
잘 되네요.
-> 추가적으로 '확장자가 없는 파일'도 삭제 테스트를 해봤는데, 파일로 인식하여 잘 삭제되었습니다. 스샷은 생략합니다
-
포토엔유 2019.07.03 18:55
항상 좋은 정보 감사합니다.
-
컨피그 2019.07.03 20:11
여기서 usebackq 옵션이 필요없는 이유가
더블쿼터까지 문자열로 써야하기 때문인거죠? -
suk 2019.07.03 21:48
별로 관계없습니다.
예전에는 usebackq를 사용하다가 요즘은 가능하면 간단하게 하려고, usebackq 을 사용하지 않는 방식으로 하고 있습니다
외국의 고수분들 cmd 파일을 열어봐도 usebackq 은 사용하지 않더군요. 사실상 저도 요즘은 usebackq 을 사용하는 경우가 없습니다.
-
바람낙엽 2019.07.03 20:56
언제나 상세한 답변 감사드립니다.
요긴하게 활용하겠습니다.
-
바람낙엽 2019.07.03 20:56
위에 답변 주신 분들 감사드립니다....
dir 로 temp 의 폴더 및 파일 목록 받아와서 for 문 돌려서 삭제하면 되죠.