以下是“Shell脚本自动删除指定大小以上的备份文件”的完整攻略。
在日常维护中,需要保留一定数量的备份数据以便于恢复,但是随着时间的推移,备份的数量和容量都会逐渐增大,因此需要定期清理历史备份文件。本文将介绍如何使用Shell脚本自动删除指定大小以上的备份文件。
# 假设备份文件夹路径为 /var/backup,删除文件大小限制为 100M
BACKUP_PATH=/var/backup
MAX_SIZE=100 # 单位为M
#!/bin/bash
# 设置备份文件夹和文件大小阈值
BACKUP_PATH=/var/backup
MAX_SIZE=100 # 单位为M
# 遍历备份文件夹下的所有备份文件,并删除大小大于指定大小的文件
find ${BACKUP_PATH} -type f -size +${MAX_SIZE}M -delete
保存并关闭Shell脚本文件,例如保存为delete_old_backup.sh
。
授权Shell脚本文件执行权限
chmod +x delete_old_backup.sh
delete_old_backup.sh
,即可自动删除指定大小以上的备份文件。./delete_old_backup.sh
#!/bin/bash
# 设置备份文件夹、文件大小阈值和删除时间
BACKUP_PATH=/var/backup
MAX_SIZE=50 # 单位为M
DAYS=5
# 删除5天前大小大于50M的备份文件
find ${BACKUP_PATH} -type f -mtime +${DAYS} -size +${MAX_SIZE}M -delete
#!/bin/bash
# 设置备份文件夹和文件大小阈值
BACKUP_PATH=/var/backup
MAX_SIZE=100 # 单位为M
# 定时删除大小大于100M的备份文件
0 0 * * * find ${BACKUP_PATH} -type f -size +${MAX_SIZE}M -delete
上述示例1会删除5天前大小大于50M的备份文件,示例2则会每天定时删除大小大于100M的备份文件。根据自己情况,可以自行修改备份路径、大小限制和删除时间,实现自动删除指定大小以上的备份文件。
本文链接:http://task.lmcjl.com/news/13868.html