매일 폴더의 로그 파일을 삭제합니다.
find ~/folder -mtime +28 -type f -delete
이제 위 삭제 명령의 영향을 받은 모든 파일을 보관 및 압축하고 이 tar.gz를 새 디렉터리 폴더 2에 저장하려고 합니다.
그럼 다음과 같이 가정해보자:
~/folder:
- x1 (3 days old)
- x2 (3 days old)
- y1 (29 days old)
- y2 (29 days old)
~/folder2:
- genericname1.tar.gz: (some already present archive)
- ...
보관, 압축 및 삭제
~/folder:
- x1
- x2
~/folder2:
- genericname1.tar.gz:
- ...
- genericname2.tar.gz:
- y1
- y2
답변1
다음과 같은 스크립트를 실행할 수 있습니다(GNU tar
또는무료 아카이브bsdtar
):
find . -type f -mtime +28 -print0 | tar -czvf backup.tar.gz --null -T -
또는 logrotate를 사용하여 시작하세요(권장). 사용자 정의 구성 파일을 /etc/logrotate.d/yourfile
샘플 파일에 배치합니다.
/var/log/news/news.crit {
monthly
rotate 2
olddir /var/log/news/old
missingok
postrotate
kill -HUP ‘cat /var/run/inn.pid‘
endscript
nocompress
}
모든 logrotate 구성 옵션에 대한 자세한 정보를 볼 수 있습니다.여기