리눅스에서 tmp 폴더에 더미 파일이 많이 쌓여서, 몇일 지난 파일은 자동으로 삭제하고 싶을 때
1. 먼저 날짜 몇일 이상 지난 파일 찾기
> find 폴더 -name 파일명 -mtime +일수
> find /tmp/ -name '*.tar' -mtime +30
이렇게 쓰면 31일 지난 파일 목록이 뜬다.
쓰는 숫자에 +1 계산해야된다.
2. 삭제하기
> find /tmp/ -name '*.tar' -mtime +30 -delete
delete 옵션을 사용하면 31일지난 파일은 삭제된다.
3. 쉘 스크립트 만들기
> vi test.sh
를 열고 아래처럼 작성한다.
#!/bin/sh
find /tmp/ -mtime +30 -delete
저장하고 나가기 (:wq)
tmp 파일의 모든파일중 31일이 지난 파일은 삭제한다.
실행권한주기,
> chmod 755 test.sh
4. 스케쥴 등록하기(crontab)
>crontab -e
30 00 * * * /tmp/test.sh
저장후 나가기(:wq)
매일 00:30분에 위 쉘를 실행함.
#적용확인하는법
현재 디렉토리의 하위 파일개수 세기
> find . -type f | wc -l