我有一个 bash 脚本,它每小时在某个目录中创建一个 mysqldump 备份。
根据以下架构,备份文件的文件名包括日期和小时:
backupfile_<day>-<month>-<year>_<hour>.sql.gz
并在这里澄清一些示例文件名:
backupfile_30-05-2012_0800.sql.gz
backupfile_01-06-2012_0100.sql.gz
backupfile_05-06-2012_1500.sql.gz
有人可以帮我创建一个脚本,该脚本将遍历目录中的所有文件,然后删除文件,留下以下内容:
- 保留超过一天的备用小时备份
- 保留一周以上的每日两次备份
- 保留超过一个月的每日备份一次。
我有以下脚本的开头:
#!/bin/bash
cd /backup_dir
for file in *
do
# do the magic to find out if this files time is up (i.e. needs to be deleted)
# delete the file
done