python----->>删除超过固定天数的日志

删除过期的日志

#!/usr/bin/env python
# coding: utf-8

import os
import datetime
import shutil

# confluence数据备份,因为confluence不能保留7天备份,并且每天全备份,占用空间很大,所以写脚本,保留7天备份文件。
data_directory = "/data/var/atlassian/application-data/confluence/backups/"
backup_directory = "/backup/"

# backup file name: backup-2019_02_24.zip
today_backup_file = "backup-" + str(datetime.date.today() + datetime.timedelta(days = -1)).replace("-", "_") + ".zip"
day_list = []

for i in range(1, 8):
    day = str(datetime.date.today() + datetime.timedelta(days = -i)).replace("-", "_")
    filename = "backup-" + day + ".zip"
    day_list.append(filename)

if os.path.exists(data_directory) and os.path.exists(backup_directory):
    # 循环数据目录,将7天的数据文件保留,其他的删除,并将最新的数据备份包,拷贝到其他的盘上
    
    for file in os.listdir(data_directory):
        filepath = os.path.join(data_directory, file)
        if file == today_backup_file:
            shutil.copy(filepath, backup_directory)
        elif file not in day_list:
            file = os.remove(filepath)

  

posted @ 2021-05-18 09:49  水木清扬  阅读(130)  评论(0编辑  收藏  举报