首页 > 编程 > Python > 正文

Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法

2020-01-04 18:09:48
字体:
来源:转载
供稿:网友

这篇文章主要介绍了Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法,涉及Python3使用tarfile模块实现tar压缩文件的技巧,需要的朋友可以参考下

本文实例讲述了Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法。分享给大家供大家参考。具体实现方法如下:

 

 
  1. # 这里将一个文件树中的所有文件和子目录归档到一个tar归档文件,然后压缩  
  2. import tarfile, os  
  3. # compression表示压缩算法,gz表示gzip颜色,bz2表示bzip2压缩, 
  4. # 空字符串表示不压缩  
  5. # folder_to_backup: 要归档的文件夹  
  6. # dest_folder 表示目标文件夹  
  7. def make_tar(folder_to_backup, dest_folder, compression = 'bz2'): 
  8. # dest_ext 表示扩展名  
  9. if compression:  
  10. dest_ext = '.' + compression  
  11. else:  
  12. dest_ext = ''  
  13. arc_name = os.path.basename(folder_to_backup)  
  14. # dest_name 为目标文件名,dest_path 为目标文件路径  
  15. dest_name = '%s.tar%s' % (arc_name, dest_ext)  
  16. dest_path = os.path.join(dest_folder, dest_name)  
  17. # 压缩方法决定了open的第二个参数是 "w", 或"w:gz", 或"w:bz2" 
  18. if compression:  
  19. dest_cmp = ':' + compression  
  20. else:  
  21. dest_cmp = '' 
  22. out = tarfile.TarFile.open(dest_path, 'w' + dest_cmp) 
  23. out.add(folder_to_backup, arc_name) 
  24. out.close()  
  25. return dest_path  
  26. dest_path = make_tar('d:/8 file_system''d:/')  
  27. print(dest_path) 

希望本文所述对大家的Python3程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表