auto_ftp_sh

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import paramiko
from datetime import date,timedelta
import time
import os
 
backupDate = time.strftime("%Y%m%d")
hostname="10.10.10.10"
hostname='%s' %hostname
port=22
port=int(port)
username="root"
username='%s' %username
password="1"
password='%s' %password
transport = paramiko.Transport((hostname,port))
transport.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(transport)
remoteFile='/data/DB/all_'+backupDate+'-0010.sql.gz'
localFile=r'C:\backup_file\all_'+backupDate+'-0010.sql.gz'

def scp_linux_to_windows():
    """从远程linux拷贝备份文件到windows"""
    sftp.get(remoteFile,localFile)
    transport.close()
 
def del_local_file():
    """删除本地windows备份文件,保留的天数由下面的reserveDay参数决定""" 
    reserveDay = 7
    reserveFile = []
    localFileDir = r'C:\backup_file'
    for i in range(reserveDay):
        i = (date.today() + timedelta(days = -i)).strftime("%Y%m%d")
        reserveFile.append('all_'+i+'-0010.sql.gz')
    localFileName = os.listdir(localFileDir)
    for item in localFileName:
        if item not in reserveFile:
            os.remove(localFileDir+'/'+item)

del_local_file()
scp_linux_to_windows()

 

posted @ 2017-09-14 22:13  屠魔的少年  阅读(250)  评论(0)    收藏  举报