python保留7天備份文件

腳本功能

服務的備份腳本,功能是保留7天的備份數據,並且將最新的備份數據拷貝到備份盤
#!/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)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章