빈 폴더를 찾아서 휴지통으로 넣는 스크립트
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2025-09-16 14:26:46 +09:00
.script Update .script/empty2bin.sh 2025-09-16 14:26:46 +09:00
README.md Add README.md 2025-09-16 11:05:12 +09:00

empty2bin.sh

empty2bin.sh는 시놀로지 NAS 전용으로 설계된 빈 폴더 정리 스크립트입니다.
빈 폴더를 자동으로 탐색하여 #recycle 폴더로 이동하고, 원래 폴더 구조를 유지하며 관리할 수 있습니다.


기능

  1. 현재 폴더 기준으로 빈 폴더 탐색 및 이동
  2. --all 플래그 사용 시 /volume{n}/공유폴더 전체 탐색
  3. 폴더 구조를 유지하며 #recycle로 이동
  4. 시스템/숨김 폴더(.@*, .DS_Store, @eaDir, #recycle) 제외
  5. 실행 로그 자동 생성 (empty2bin_YYYYMMDD_HHMMSS.log)
  6. 로그 보관 기간 설정 가능 (기본 3일, 변수 LOG_RETENTION_DAYS로 조정)
  7. 실행 시 콘솔 출력 + 로그 저장

설치 및 사용 방법

  1. NAS 공유폴더 최상단에 .script 폴더 생성
  2. empty2bin.sh 파일을 .script에 저장
  3. 실행 권한 부여:
chmod +x empty2bin.sh
  1. 스크립트 실행
  • 현재 폴더 기준 실행
cd /volume2/music/.script
./empty2bin.sh
  • 모든 공유폴더 순회
cd /volume2/music/.script
./empty2bin.sh --all

설정

스크립트 최상단에서 다음 변수를 조정

LOG_RETENTION_DAYS=3       # 로그 보관 기간 (일)
TARGET_NAME="#recycle"     # 빈 폴더 이동 대상 폴더명

Cron 등록 예시

매일 새벽 3시에 자동 실행

0 3 * * * root cd /volume2/music/.script && ./empty2bin.sh

또는 제어판 - 작업 스케줄러 - 생성 - 예약된 작업 - 사용자 정의 스크립트 에서 설정

주의사항

  • 시스템 폴더나 중요한 데이터가 있는 공유폴더 내부에서 실행 시 반드시 제외 대상 확인
  • 이동된 폴더는 #recycle 아래로 구조가 유지되어 저장됩니다.
  • core dump 파일이나 임시 파일은 자동으로 제외됩니다.