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


Posted in Python onMay 22, 2015

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

# 这里将一个文件树中的所有文件和子目录归档到一个tar归档文件,然后压缩 
import tarfile, os 
# compression表示压缩算法,gz表示gzip颜色,bz2表示bzip2压缩,
# 空字符串表示不压缩 
# folder_to_backup: 要归档的文件夹 
# dest_folder 表示目标文件夹 
def make_tar(folder_to_backup, dest_folder, compression = 'bz2'):
  # dest_ext 表示扩展名 
  if compression: 
    dest_ext = '.' + compression 
  else: 
    dest_ext = '' 
  arc_name = os.path.basename(folder_to_backup) 
  # dest_name 为目标文件名,dest_path 为目标文件路径 
  dest_name = '%s.tar%s' % (arc_name, dest_ext) 
  dest_path = os.path.join(dest_folder, dest_name) 
  # 压缩方法决定了open的第二个参数是 "w", 或"w:gz", 或"w:bz2"
  if compression: 
    dest_cmp = ':' + compression 
  else: 
    dest_cmp = ''
  out = tarfile.TarFile.open(dest_path, 'w' + dest_cmp)
  out.add(folder_to_backup, arc_name)
  out.close() 
  return dest_path 
dest_path = make_tar('d:/8 file_system', 'd:/') 
print(dest_path)

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

Python 相关文章推荐
python实现端口转发器的方法
Mar 13 Python
Flask框架的学习指南之用户登录管理
Nov 20 Python
python re模块findall()函数实例解析
Jan 19 Python
Python使用爬虫爬取静态网页图片的方法详解
Jun 05 Python
python tkinter界面居中显示的方法
Oct 11 Python
基于Python的Post请求数据爬取的方法详解
Jun 14 Python
python 图像处理画一个正弦函数代码实例
Sep 10 Python
python实现差分隐私Laplace机制详解
Nov 25 Python
在python里创建一个任务(Task)实例
Apr 25 Python
基于Python中random.sample()的替代方案
May 23 Python
Python实现扫码工具的示例代码
Oct 09 Python
详解python polyscope库的安装和例程
Nov 13 Python
Python3读取zip文件信息的方法
May 22 #Python
Python中用altzone()方法处理时区的教程
May 22 #Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 #Python
python从网络读取图片并直接进行处理的方法
May 22 #Python
python实现统计代码行数的方法
May 22 #Python
在Python中处理日期和时间的基本知识点整理汇总
May 22 #Python
python使用PIL模块实现给图片打水印的方法
May 22 #Python
You might like
快速开发一个PHP扩展图文教程
2008/12/12 PHP
php调用mysql存储过程实例分析
2014/12/29 PHP
js 未结束的字符串常量错误解决方法
2010/06/13 Javascript
javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
2011/04/12 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
JS验证邮件地址格式方法小结
2015/12/01 Javascript
jQuery xml字符串的解析、读取及查找方法
2016/03/01 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
jquery  实现轮播图详解及实例代码
2016/10/12 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
vsCode安装使用教程和插件安装方法
2020/08/24 Javascript
如何解决jQuery 和其他JS库的冲突
2020/06/22 jQuery
[02:23]2018DOTA2亚洲邀请赛趣味视频——反应测试
2018/04/04 DOTA
django模型中的字段和model名显示为中文小技巧分享
2014/11/18 Python
Python的装饰器用法学习笔记
2016/06/24 Python
TensorFlow损失函数专题详解
2018/04/26 Python
Python常用模块之requests模块用法分析
2019/05/15 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
selenium自动化测试入门实战
2020/12/21 Python
举例讲解Python装饰器
2020/12/24 Python
详解html5 shiv.js和respond.min.js
2018/01/24 HTML / CSS
荷兰游戏商店:Allyouplay
2019/03/16 全球购物
MaBelle玛贝尔香港官网:香港钻饰连锁店
2019/09/09 全球购物
电气专业推荐信范文
2013/11/18 职场文书
体育系毕业生求职自荐信
2014/04/16 职场文书
终止合同协议书
2014/04/17 职场文书
反邪教宣传工作方案
2014/05/07 职场文书
工程材料采购方案
2014/05/18 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
2016保送生自荐信范文
2016/01/29 职场文书
创业计划书介绍
2019/04/24 职场文书
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers
Python实现制作销售数据可视化看板详解
2021/11/27 Python
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python