다운로드 폴더에 영수증·이미지·PDF가 뒤섞여 쌓였다고 합시다.
매번 수동으로 분류하면 지치지만 「확장자별로 폴더에 자동 정리」 스크립트는 10줄로 끝납니다.
파이썬 자동화의 가장 인기 있는 첫 사례입니다.
기본 도구.
import shutil, pathlib.
for f in pathlib.Path("~/Downloads").expanduser().iterdir(): if f.suffix in (".jpg", ".png"): shutil.move(str(f), "images/").
한 줄짜리 분류 로직.
조건 다양화.
확장자뿐 아니라 「수정 시각이 30일 이상 된 파일은 archive/로」, 「크기가 100MB 초과면 large/로」, 「파일명에 'invoice' 들어가면 receipts/로」.
f.stat().st_mtime, f.stat().st_size, f.name.lower() 같은 속성으로 판별.
안전 장치 — dry-run 옵션.
실제 이동 전에 「어떤 파일이 어디로 갈지」 출력만 해 보는 모드.
shutil.move() 대신 print(f"{f} → {dest}")로 시작 → 결과 확인 후 실제 이동.
잘못된 분류로 파일 잃는 사고를 방지.
스케줄링까지.
이 스크립트를 cron(리눅스·맥)이나 작업 스케줄러(윈도우)에 등록 → 매일 새벽 자동 실행.
「수동 정리 시간 0」 달성.
파이썬 + 운영체제 자동화의 단순하지만 효과 큰 패턴.
한 줄 요약
파일·디렉토리 자동 정리는 pathlib + shutil로 10줄 스크립트.
조건 다양화하고 dry-run 안전장치 + cron 스케줄링이면 수동 정리 시간 0 달성.
더 알아볼 것
- watchdog로 실시간 감시·정리
- trash-cli로 안전한 휴지통 이동
- 폴더 트리 — pathlib.rglob