리눅스 n일전 파일 삭제

1 개요[ | ]

리눅스 n일전 파일 삭제
  • find 명령어에 -mtime +일수 옵션을 주면 되는데... 생각한 일수보다 1 적게 주어야 함
  • 예를 들어 3일 초과한 파일을 삭제하려면 -mtime +2
find 폴더 -name 파일명 -mtime +일수 -delete
find 폴더 -name 파일명 -mtime +일수 -exec rm -f {} \;
find 폴더 -name 파일명 -mtime +일수 | xargs rm -f

1.1 실행예시[ | ]

  • 매일 04시 백업파일을 보관하는 폴더 /backup/file 에서 3일이 초과한 파일들을 삭제해보자.[1]
root@zetadb:~# find /backup/file -name *.tgz | sort
/backup/file/2016-04-24_0400.zetadb.file.tgz
/backup/file/2016-04-25_0400.zetadb.file.tgz
/backup/file/2016-04-26_0400.zetadb.file.tgz
/backup/file/2016-04-27_0400.zetadb.file.tgz
/backup/file/2016-04-28_0400.zetadb.file.tgz
/backup/file/2016-04-29_0400.zetadb.file.tgz
/backup/file/2016-04-30_0400.zetadb.file.tgz
→ 7개 파일( 24~30일 )이 있음
→ 이중 3일치(28, 29, 30일분)는 그대로 두고 나머지를 삭제하고자 한다.
root@zetadb:~# find /backup/file -name *.tgz -mtime +2
/backup/file/2016-04-25_0400.zetadb.file.tgz
/backup/file/2016-04-27_0400.zetadb.file.tgz
/backup/file/2016-04-26_0400.zetadb.file.tgz
/backup/file/2016-04-24_0400.zetadb.file.tgz
→ 삭제대상은 4개 파일( 24~27일 )
root@zetadb:~# find /backup/file -name *.tgz -mtime +2 -delete
root@zetadb:~# find /backup/file -name *.tgz
/backup/file/2016-04-28_0400.zetadb.file.tgz
/backup/file/2016-04-29_0400.zetadb.file.tgz
/backup/file/2016-04-30_0400.zetadb.file.tgz

2 같이 보기[ | ]

3 주석[ | ]

  1. 현재시각은 2016-04-30 20:26
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}