특정 패턴 경로의 디렉토리 시간별 제거
qnap NAS를 사용하는데, 이 NAS에 있는 find 는 -ctime을 제공하지 않네요.
우선 문제는,
- /share/backup/111/increasement/backup_2016/12/10/*
- /share/backup/112/increasement/backup_2016/12/10/*
- /share/backup/113/increasement/backup_2016/12/10/*
- /share/backup/114/increasement/backup_2016/12/10/*
위와 같은 패턴의 백업 디렉토리들이 존재하는데요, 마지막 3일치만 남겨놓고 지우고 싶어서 다음과 같은 방법으로 해결했습니다.
#!/bin/bash
find /share/backup/*/increasement -name backup_* | grep $(date +%Y-%m-%d --date '3 days ago') | xargs rm -rf
위의 스크립트를 crontab 에 매년 매월 매일 0시 0분에 동작하도록 적용하여 처리할 수 있었습니다.
반응형
'프로그래밍언어 > 리눅스' 카테고리의 다른 글
centos locale 에 en_US.utf8 추가하기 (0) | 2017.05.30 |
---|---|
rsync snapshot & backup (0) | 2017.02.22 |
SSH 접속 지연(느림) 해결 (0) | 2017.01.06 |
[PHP-FPM] 최대 자식 개수 구하기 (0) | 2017.01.03 |
[CentOS7] systemd 에 서비스 등록하기 (0) | 2016.12.29 |