服务器文件备份脚本,tomcat应用文件备份脚本及日志备份脚本的示例代码

tomcat应用文件备份脚本及日志备份脚本的示例代码

发布时间:2020-09-29 06:01:30

来源:脚本之家

阅读:91

作者:熊抱

栏目:服务器

下面先给大家介绍tomcat应用文件备份脚本

#!/bin/bash

#Back up the entire tomcat8080-dist to the /backup directory

backuppath=/mnt/tomcat8080-dist/webapps/

backpath=/backup/backup-tomcat8080-dist/

action=/backup/backup-tomcat8080-dist/

APPNAME=dist

BACKUPNAME1=dist

BACKUPNAME2=spongod-module-admin

BACKUPNAME3=spongod-module-interface

for i in 1,2,3

do

echo "" >>/backup/log/backup.log

done

echo "this backup start!" >>/backup/log/backup.log

#echo "----STRAT BACKUP TIME:`date '+%Y%m%d-%H%M'`" >>/backup/log//backup.log

if [[ -n $backpath ]] && [[ -n $backuppath ]];then

echo "--------STARTUP BACKUP TIME:`date '+%Y-%m-%d-%H-%M'`-------" >>/backup/log/backup.log

cd /mnt/tomcat8080-dist/ 2>> /backup/log/backup.log

time=`date '+%Y-%m-%d-%H-%M'`

tar czf /backup/backup-tomcat8080-dist/$APPNAME-$time\.tar.gz webapps/$BACKUPNAME1/ webapps/$BACKUPNAME2/ webapps/$BACKUPNAME3/ 2>>/backup/log/BackupFailed.log

if [ $? -eq 0 ];then

echo -e "----\033[32m BACKUP SUCCESSFUL\033[0m-----------------------" >>/backup/log/backup.log

echo "--------BACKUP END TIME is:`date '+%Y-%m-%d-%H-%M'`--------" >>/backup/log/backup.log

echo "This backup ends" >>/backup/log/backup.log

for i in 1,2,3

do

echo "" >>/backup/log/backup.log

done

else

echo -e "----\033[31m Backup failed, please try again \033[0m -------------" >>/backup/log/BackupFailed.log

echo "--------Failed Time:`date '+%Y-%m-%d-%H-%M'`-----------" >>/backup/log/BackupFailed.log

fi

fi

#Delete files from three days away

echo "" >>/backup/log/delete-backup.log

echo "start deleted file" >>/backup/log/delete-backup.log

find $action -mtime +3 -type f |xargs rm -f

if [ $? -eq 0 ];then

echo "----------File deleted successfully--------------" >>/backup/log/delete-backup.log

else

echo "----------File deletion failed-------------------" >>/backup/log/delete-backup.log

echo "" >>/backup/log/delete-backup.log

fi

下面给大家介绍tomcat的日志备份脚本

这个是python脚本,默认对tomcat日志保存15天,我们自己可以手动修改的

#!/usr/bin/env python

#-*- coding:utf-8 -*-

import os,datetime,shutil,time

logRootPath = "/data/webservers"

backupRootPath = "/data/logs/backup/tomcat"

delNDayBefore = 15

def getYestoday():

now = datetime.datetime.now()

delta = datetime.timedelta(days=-1)

yestoday = now + delta

yestodayStr = yestoday.strftime('%Y%m%d')

return yestodayStr

def createDir(path):

if not os.path.exists(path):

os.makedirs(path)

def backupLog():

for path in os.listdir(logRootPath):

logPath = os.path.join(os.path.join(logRootPath, path), "logs")

backupPath = os.path.join(backupRootPath, path)

logFilePath = os.path.join(logPath, "catalina.out")

targetFileName = "catalina.out." + getYestoday()

targetFilePath = os.path.join(backupPath, targetFileName)

createDir(backupPath)

shutil.copy(logFilePath,targetFilePath)

os.system("echo '' > %s" % (logFilePath))

def getNDayTime(n):

currTime = time.time()

deltTime = 3600*24*n # n天前

return currTime - deltTime

def delLog():

fileInfos = os.walk(backupRootPath)

beforeTime = getNDayTime(delNDayBefore)

for path,d,filelist in fileInfos:

for filename in filelist:

filePath = os.path.join(path, filename)

modifyTime = os.stat(filePath).st_mtime

print(filePath,":",modifyTime,"-",beforeTime,"-",modifyTime < beforeTime)

if modifyTime < beforeTime:

print("remove file %s" % (filePath))

os.remove(filePath)

def do():

backupLog()

delLog()

if __name__ == "__main__":

do()

总结

以上所述是小编给大家介绍的tomcat应用文件备份脚本及日志备份脚本的示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对亿速云网站的支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值