用于删除最旧备份的命令行

时间:2017-05-14 09:27:45

标签: linux bash scripting automation backup

我的目录中包含多个Backup from $(date +"%d.%m.%Y at %H:%M:%S").zip个文件。

/opt/
   /opt/files/
      /opt/files/private/*
      /opt/files/backup.sh
      /opt/files/backup.txt
      /opt/files/Backup from $(date +"%d.%m.%Y at %H:%M:%S").zip

使用每日cronjob 0 0 * * * cd /opt/files/ && ./backup.sh > /opt/files/backup.txt我正在管理我的备份。

可以想象,随着时间的推移,这个目录会变得越来越大。我现在想创建另一个脚本(或cronjob,如果它使用一个命令),在14天后删除最旧的/opt/files/Backup from $(date +"%d.%m.%Y at %H:%M:%S").zip(这样我最近有14个备份)。

如果你能解释一下你的答案会很棒。

1 个答案:

答案 0 :(得分:0)

find /opt/files/Backup -name \*.zip -a -mtime +14 -ls

如果您对要匹配的文件是要删除的文件感到满意,请将-ls替换为" -exec rm {} \;"