我有一个cronjob,它每天凌晨3点30分创建一个数据库备份。
文件名的命名为live_YYYY_MM_DD.sql.gz,其中YYYY,MM和DD是备份当天的日期。
通常,我进入并删除较旧的备份,但我想将备份数量限制为最近的3个备份。有没有办法通过某种过程或脚本来做到这一点?
由于
编辑:
编辑了logrotate.conf答案 0 :(得分:1)
一个简单的shell脚本可以完成这项工作,但您最好不要学习标准工具:logrotate。当您对旧备份文件管理的要求发生变化时,只需更改logrotate配置条目,而不是修改home-brew脚本。
答案 1 :(得分:0)
ls -t live_*.sql.gz|awk 'NR>3'|xargs echo
如果此回复正确的文件,请使用rm
代替echo
。将它放在备份脚本中的适当位置,您不需要安装logrotate。