#!/bin/bash # 源文件夹和目标文件夹路径 source_dir=$1 target_dir=$2 mkdir ${target_dir} -p || true # 备份文件名和目录 backup_date=$(date +%Y-%m-%d) backup_dir="${target_dir}/backup_${backup_date}" backup_file="${backup_dir}.tar.gz" # 使用rsync命令进行文件夹备份 #rsync -a "$source_dir" rsync --timeout=900 "$source_dir" "$backup_dir" -urdvt # 压缩备份目录 tar -czf "$backup_file" "$backup_dir" rm ${backup_dir} -fr # 删除7天前的备份 delete_date=$(date -d "7 days ago" +%Y-%m-%d) delete_dir="${target_dir}/backup_${delete_date}.tar.gz" rm "$delete_dir" # 输出日志 current_date=$(date +%Y-%m-%d) current_time=$(date +%H:%M:%S) echo "[$current_date $current_time] 备份成功"