Python增量备份实现技巧分享

开发 后端
我们今天将会通过对一段代码的解读来详细了解一下有关Python增量备份的具体操作方法,希望可以给大家带来一些帮助。

大家在了解了Python这一编程语言之后,会发现它在一些特定环境中的应用方式是非常简便的,而且能够很好的帮助开发人员完成这些环境下的功能需求。在这里我们先来一起了解一下Python增量备份的相关操作。

Python增量备份代码示例:

  1. #!/usr/bin/python  
  2. #-*-coding:utf-8-*-  
  3. #Filename: auto_bak.py  
  4. #Author: zz  
  5. import os  
  6. import sys  
  7. def get_dir(path):  
  8. print path, '\n'  
  9. return os.listdir(path)  
  10. def bak_file(path,path_bak):  
  11. list = os.listdir(path)  
  12. for l in list:  
  13. file_path = os.path.join(path, l)  
  14. file_path_bak = os.path.join(path_bak, l)  
  15. print file_path  
  16. #如果文件路径为目录  
  17. if os.path.isdir(file_path):  
  18. #如果在备份目录中文件夹不存在则创建  
  19. if not os.path.isdir(file_path_bak):  
  20. create_com = '''mkdir -p '%s' ''' \  
  21. % (file_path_bak)  
  22. if os.system(create_com) == 0:  
  23. print create_com   
  24. else:  
  25. print 'create folder failure!'  
  26. os._exit(0)   
  27. bak_file(file_path, file_path_bak)  
  28. else:  
  29. #如果文件已经存在,则比较文件修改时间  
  30. if os.path.isfile(file_path_bak):  
  31. stat_bak = os.stat(file_path_bak)  
  32. stat_source = os.stat(file_path)  
  33. #判断文件修改时间  
  34. if stat_source.st_mtime <= stat_bak.st_mtime:  
  35. continue  
  36. cp_com = '''cp '%s' '%s' ''' \  
  37. % (file_path, file_path_bak)  
  38. if os.system(cp_com) == 0:   
  39. print cp_com  
  40. else:   
  41. print 'create folder failure!'  
  42. os._exit(0)   
  43. #要备份的文件目录  
  44. path = '/home/zyf/appspot/auto_bak/a' 
  45. #备份文件目录  
  46. path_bak = '/home/zyf/appspot/auto_bak/bak' 
  47. #开始备份  
  48. bak_file(path, path_bak) 

以上就是我们对Python增量备份的相关操作方法的介绍。

【编辑推荐】

  1. Python命名约定基本内容解析
  2. C调用Python函数相关代码示例剖析
  3. Python编程规范具体内容解析
  4. Python插件PyDev正确配置方法解读
  5. Python future模块常见示例相关解读
责任编辑:曹凯 来源: 博客园
相关推荐

2010-03-03 10:10:33

Python实现Soc

2010-09-06 16:02:00

DB2

2010-05-26 10:25:50

MySQLdump增量

2010-10-29 09:36:49

完全备份增量备份差异备份

2010-01-28 17:12:45

Android闪屏

2010-08-06 09:07:15

DB2线增量备份

2009-12-10 10:24:24

PHP写入文件

2017-07-10 16:00:47

Mysql数据备份数据还原

2011-09-15 09:49:57

HBase

2010-01-27 18:06:03

Android短信发送

2009-12-29 11:01:46

WPF淡入效果

2010-01-04 14:14:43

Silverlight

2010-02-24 11:22:04

WCF方法重载

2009-12-30 16:19:49

Silverlight

2010-03-03 16:57:28

Python字符

2010-08-03 09:44:42

DB2在线增量备份

2018-11-08 10:13:28

Rsync服务器备份

2020-09-27 10:06:16

Btrfs增量备份

2010-11-03 14:16:29

DB2增量备份

2010-01-18 18:50:26

VB.NET鼠标手势
点赞
收藏

51CTO技术栈公众号