脚本内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash

# 博客目录
blog_dir="/data/hexo/blog"

# 备份目录
backup_dir="/data/backup/hexo"

# 备份文件名格式
backup_filename=$(date +%Y%m%d_%H%M%S)

# 备份
echo "开始备份博客..."
tar -czvf ${backup_dir}/${backup_filename}.tar.gz ${blog_dir}
echo "备份成功"

# 删除7天前的备份
echo "删除7天前的备份..."
find ${backup_dir} -type f -mtime +7 -exec rm -rf {} \;
echo "删除成功"

定时执行

1
2
# 每晚2点执行一次
0 2 * * * /bin/bash /path/to/backup.sh