一 费话不说,直接先上代码:
#!/bin/bash WEBSITE_DIR=/home/www BACKUP_DIR=/backup/web DATE=web_`date +%Y%m%d` find ${BACKUP_DIR}/ -name '*' -type f -mtime +5 -exec rm {} \; if [ -f ${BACKUP_DIR}/${DATE}.tar.gz ]; then echo `date +%Y-%m-%d`'s webebsite backup file is existing' else tar -czvf ${BACKUP_DIR}/${DATE}.tar.gz ${WEBSITE_DIR} fi
二 代码解析:
1.需要备份的web目录路径
WEBSITE_DIR=/home/www
2.备份文件存放目录
BACKUP_DIR=/backup/web
3.文件命名,按时间
DATE=web_`date +%Y%m%d`
4. 删除5天前的备份文件
find ${BACKUP_DIR}/ -name '*' -type f -mtime +5 -exec rm {} \;
5. 先判断是否存在备份文件,如果存在跳过,不存在备份文件
if [ -f ${BACKUP_DIR}/${DATE}.tar.gz ]; then echo `date +%Y-%m-%d`'s webebsite backup file is existing' else tar -czvf ${BACKUP_DIR}/${DATE}.tar.gz ${WEBSITE_DIR} fi
几行代码,实现网站文件自动备份。End!