2012-05-22 24 views
1

我有一個cronjob,每天凌晨3.30創建數據庫備份。限制特定文件夾中的文件數量

文件名的命名是live_YYYY_MM_DD.sql.gz,其中YYYY,MM和DD是進行備份的日期。

通常情況下,我會進入並刪除較舊的備份,但我想將備份數量限制爲最近3次備份。有什麼辦法通過某種過程或腳本來做到這一點?

感謝

編輯:

我編輯logrotate.conf按http://www.thegeekstuff.com/2010/07/logrotate-examples/

+5

Google for logrotate – holygeek

+0

謝謝,這就是我一直在尋找的東西。 – ssj1980

+1

@holygeek你應該添加作爲答案 – Kevin

回答

0
ls -t live_*.sql.gz|awk 'NR>3'|xargs echo 

如果回聲正確的文件,使用rm代替echo。將它放在備份腳本中的適當位置,並且不需要安裝logrotate。

1

一個簡單的shell腳本可以完成這項工作,但是您最好學習使用它的標準工具:logrotate。當您對舊備份文件管理的要求發生變化時,而不是修改自家創建的腳本,這只是改變logrotate配置條目的問題。

相關問題