python 文件增量备份

#!/usr/bin/python
#-*-coding:utf-8-*-
#Filename: auto_bak.py
#Author: zz
import os
import sys
 
def get_dir(path):
    print path, '\n'
    return os.listdir(path)
 
def bak_file(path,path_bak):
 
    list = os.listdir(path)
    for l in list:
        file_path     = os.path.join(path, l)
        file_path_bak = os.path.join(path_bak, l)
        print file_path
        #如果文件路径为目录
        if os.path.isdir(file_path):
 
            #如果在备份目录中文件夹不存在则创建
            if not os.path.isdir(file_path_bak):
 
                create_com = '''mkdir -p '%s' ''' \
                             % (file_path_bak)
 
                if os.system(create_com) == 0:
                    print create_com 
                else:
                    print 'create folder failure!'
                    os._exit(0) 
 
            bak_file(file_path, file_path_bak)
        else:
            #如果文件已经存在,则比较文件修改时间
            if os.path.isfile(file_path_bak):
 
                stat_bak    = os.stat(file_path_bak)
                stat_source = os.stat(file_path)
 
                #判断文件修改时间
                if stat_source.st_mtime <= stat_bak.st_mtime:
                    continue
 
            cp_com  = '''cp '%s' '%s' ''' \
                      % (file_path, file_path_bak)
 
            if os.system(cp_com) == 0: 
                print cp_com
            else: 
                print 'create folder failure!'
                os._exit(0) 
 
#要备份的文件目录
path     = '/home/zyf/appspot/auto_bak/a'
#备份文件目录
path_bak = '/home/zyf/appspot/auto_bak/bak'
#开始备份
bak_file(path, path_bak)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值