본문 바로가기

Developer/Knowledge Base

리눅스에서 일정기간 이상된 파일 삭제하기

휘발성으로 이용되는 파일들이나 로그파일등.. 파일이 생성된지 일정기간이 경과하면 파일을 삭제해야하는(하는게 좋은) 파일들이 있다. 이들을 삭제하기 위한 방법은....

* 생성된지 30일 이상 된 파일만 삭제

/usr/bin/find "대상디렉토리" -type f -ctime +30 -exec /bin/rm -rf {} \;

* 생성된지 30일 이상 된 비어있는 디렉토리만 삭제

/usr/bin/find "대상디렉토리" -empty -type d -ctime +30 -exec /bin/rmdir {} \;

리눅스 버전에 따라 -ctime이 먹지 않는 경우가 있다. 이때는 -mtime으로 대체(의미는 약간 다르지만)한다.

이러한 쉘을 crontab에 하루단위로 동작하도록 등록해두면 편리하겠죵?