시스템 개발 및 관리/Windows 환경 파일 자동화
파이썬으로 다운로드 폴더 정리 자동화하기!
Data Jun
2025. 3. 24. 10:16
소원이는 오늘도 평화롭게 일하고 있었지만, downloads 폴더를 본 순간 멘붕이 왔습니다.
수많은 파일들이 뒤죽박죽 섞여 있어서 원하는 파일을 찾을 수 없는 상황!
이럴 때 필요한 건 손 정리가 아닌 자동 정리 프로그램이죠. 😎
목표
- 확장자나 파일 이름에 따라 파일을 정리
- 기존 파일은 삭제하지 않고 복사로 이동
- 정리 기준에 따라 usb 폴더 안의 하위 폴더로 분류
정리 기준
🧑💻 핵심 코드
import os
import shutil
# 확장자 조건
report_ext = ['.hwp', '.docx', '.pptx']
img_ext = ['.png', '.jpg', '.svg']
src_dir = 'downloads'
# usb 디렉토리 기준
usb_root = 'usb'
# 파일 순회
for file_name in os.listdir(src_dir):
name, ext = os.path.splitext(file_name)
src_path = os.path.join(src_dir, file_name)
# 문서 파일
if ext in report_ext:
dst_dir = os.path.join(usb_root, 'docs')
# 이미지 파일
elif ext in img_ext:
if 'screenshot' in name.lower():
dst_dir = os.path.join(usb_root, 'screenshots')
else:
dst_dir = os.path.join(usb_root, 'images')
# 기타 파일
else:
dst_dir = os.path.join(usb_root, 'etc')
# 폴더 없으면 생성
os.makedirs(dst_dir, exist_ok=True)
# 복사
shutil.copy(src_path, dst_dir)
# 로그 출력
print(f"{file_name} -> {os.path.basename(dst_dir)}로 복사")
실행 예시
screenshot_2025-03-11 21_21_40.png -> screenshots로 복사
test_image.svg -> images로 복사
accounting_report.pptx -> docs로 복사
codeit_cs.png -> images로 복사
codeit_lecture.pdf -> etc로 복사
포인트 요약
이런 분에게 추천!
- 다운로드 폴더가 지저분한 걸 못 참는 분
- 폴더 정리를 자주 깜빡하는 분
- 업무 파일/이미지를 USB 등으로 빠르게 백업하고 싶은 분
파이썬 자동화 코드는 생각보다 간단하면서도 강력합니다.
한 번만 짜두면, 앞으로는 버튼 한 번 누르는 것처럼 폴더 정리가 끝나요!
다음엔 날짜별 백업 자동화나 파일 용량별 분류도 도전해보세요 😊