1. #!/bin/bash
    2. :<<BLOCK
    3. 每天100 备份/var/log 目录下前一天的日志文件并存放在当前目录中btslog 目录中,
    4. 然后删除15天前的log备份文件,实用shell脚本完成。日志格式:btsvr.log.2018-01-01,
    5. 打包备份文件搁置为btsvr.log.2018-01-01.tar.gz
    6. BLOCK
    7. yesterday=$(date +"%Y-%m-%d" -d "-1 days")
    8. backupdir=/server/backup/btslog
    9. [ ! -d $backupdir ] && mkdir -p $backupdir
    10. backup_yes() {
    11. cd ${backupdir}
    12. mv /var/log/btsvr.log.${yesterday} ${backupdir}
    13. tar -czvf btsvr.log.${yesterday}.tar.gz btsvr.log.${yesterday}
    14. if [ $? -eq 0 ];then
    15. rm -f ./btsvr.log.${yesterday}
    16. fi
    17. }
    18. delete_old() {
    19. find ./ -name "*.tar.gz" -ctime +15 -exec rm -rf {} \;
    20. }
    21. backup_yes
    22. delete_old
    23. # crontab -e 定时任务
    24. # 0 1 * * * /bin/bash /server/scripts/bak_log.sh &> /dev/null