본문 바로가기
IT/윈도우

[윈도우 팁] CMD 명령어로 파일리스트에 있는 파일들 삭제하기

by 아로리 저장소 2023. 5. 9.
728x90

윈도우 특정 드라이브에서 특정 파일들을 자동으로 검색해서 삭제? 

업무를 하다보면 특정 파일들을 삭제해야할 경우가 있습니다. 한 폴더에만 모든 파일들이 있으면 한번에 삭제가 가능하겠지만 각 파일들 마다 저장되어 있는 폴더가 다 다르면 이야기가 달리지겠지요? 

 

저같은 경우 약 100개정도의 파일을 삭제 해야하는데 파일명만 알고 각 경로를 몰라 어떻게 하면 삭제할 수 있을지 고민하다가 방법을 알게 되어 공유 합니다. 해당 방법은 파일리스트를 기준으로 지정한 드라이브에서 검색하여 삭제하는 방법입니다. 

 

작업단계 

1. 삭제할 파일리스트 만들기 

2. 명령프롬프트창 설정

3. 명령프롬프트창에서 명령어 실행 

 

1. 삭제할 파일리스트(filelist.txt) 만들기 

우선 삭제할 파일명들이 하나의 txt파일에 정리를 해야합니다. 

 

엑셀을 이용하여 삭제 할 파일리스트 메모장에 붙여넣기

우선 엑셀에서 한 행에 삭제할 파일명을 확장자까지 적어주세요. 추가한 파일명을 모두 선택한 다음 메모장을 열어서 붙여넣기 해주세요. 

 

메모장에서 UTF-8 인코딩으로 filelist이름으로 저장하기

메모장에서 "파일-다름이름으로 저장" 을 클릭하고 저장하고 싶은 폴더를 선택 후 파일이름을 filelist, 인코딩을 UTF-8로 선택한 다음 원하는 경로를 설정하고 저장버튼을 클릭합니다.(저는 c:\work 로 설정하였습니다.)

파일이름의 경우 추후 CMD명령어와 연관이 있어 그대로 정의해주세요. (CMD 명령어이해가 있으신 분은 바꾸셔도 상관없습니다.)

 

삭제할 파일이 실제로 삭제가 되는지 확인하기 위해서 삭제파일 리스트에 있는 파일들의 위치를 3개로 나눠서 배치하였습니다. 

 

2. 명령프롬프트 실행 및 한글 깨짐방지 설정(인코딩설정)

윈도우 돋보기를 클릭하고 CMD를 입력하여 명령프롬프트를 실행합니다. 

 

한글파일명은 글자가 깨질 수 있어 UTF-8형식으로 인코딩 할 수 있게 명령 프롬프트 창에서 다음 명령어를 실행해주세요 

chcp 65001

실행이 완료되면 Active code page: 65001 이 나왔는지 확인합니다. 

 

filelist.txt 저장 폴더로 이동 

이제 사전에 작성한 삭제파일 리스트(filelist.txt) 파일이 있는 경로로 이동합니다. 저는 c:\work폴더에 저장을 하여 해당 폴더로 이동하였습니다. 

cd c:\work

dir 명령어의 경우 해당 폴더에 있는 파일과 폴더를 보여줍니다. 

 

3. 명령프롬프트창에서 검색삭제 명령어 실행

for /f "usebackq delims=" %f in ("filelist.txt") do for /f "tokens=* delims=" %d in ('dir /b /s "C:\%f" 2^>nul') do del "%d"

우선 위 명령어를 전체 복사합니다. 

 

이제 명령 프롬프트 창에서 filelist.txt 파일이 있는 폴더에서 해당 명령어를 붙여넣기 하고 엔터키를 눌러 명령어를 실행합니다. 그러면 삭제파일 리스트를 읽어와서 c 드라이브 전체를 검색하여 해당 파일들을 삭제합니다. 

 

파일 모두 삭제된 것을 확인 할 수 있습니다. 이제 업무중에 원하는 파일을 자유롭게 삭제하여 업무효율을 높여 봅시다!

 

 

 

 

 

 

 

 

 

728x90