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 urlopen 使用小示例
Sep 06 Python
Python中关键字nonlocal和global的声明与解析
Mar 12 Python
快速了解Python开发中的cookie及简单代码示例
Jan 17 Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
May 21 Python
解决python写入带有中文的字符到文件错误的问题
Jan 31 Python
Python 画出来六维图
Jul 26 Python
python爬取百度贴吧前1000页内容(requests库面向对象思想实现)
Aug 10 Python
Python3 解决读取中文文件txt编码的问题
Dec 20 Python
python字符串判断密码强弱
Mar 18 Python
python中return如何写
Jun 18 Python
python如何删除列为空的行
Jul 17 Python
Django扫码抽奖平台的配置过程详解
Jan 14 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
下载文件的点击数回填
2006/10/09 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
2014/04/29 PHP
实例简介PHP的一些高级面向对象编程的特性
2015/11/27 PHP
PHP中SQL查询语句的id=%d解释(推荐)
2016/12/10 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
使用PHP访问RabbitMQ消息队列的方法示例
2018/06/06 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
2019/01/15 PHP
javascript伸缩菜单栏实现代码分享
2015/11/12 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
jQuery购物车插件jsorder用法(支持后台处理程序直接转换成DataTable处理)
2016/06/08 Javascript
javascript代码调试之console.log 用法图文详解
2016/09/30 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
[00:23]DOTA2群星共贺开放测试 25日无码时代来袭
2013/09/23 DOTA
Python编码类型转换方法详解
2016/07/01 Python
Python set常用操作函数集锦
2017/11/15 Python
python中logging包的使用总结
2018/02/28 Python
python之DataFrame实现excel合并单元格
2021/02/22 Python
python接口自动化测试之接口数据依赖的实现方法
2019/04/26 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
Python创建一个元素都为0的列表实例
2019/11/28 Python
解决jupyter notebook 出现In[*]的问题
2020/04/13 Python
python输出数学符号实例
2020/05/11 Python
从零实现一个自定义html5播放器的示例代码
2017/08/01 HTML / CSS
HTML5 常见面试题之PC端和移动端区别介绍
2018/01/22 HTML / CSS
莫斯科珠宝厂官方网站:Miuz
2020/09/19 全球购物
人事主管岗位职责范本
2013/12/04 职场文书
会展策划与管理专业求职信
2014/06/09 职场文书
商业计算机应用专业自荐书
2014/06/09 职场文书
年检委托书
2014/08/30 职场文书
2014年民政局关于保密工作整改措施
2014/09/19 职场文书
全陪导游词开场白
2015/05/29 职场文书
2016年小学生寒假总结
2015/10/10 职场文书
导游词之太行山青龙峡
2020/01/14 职场文书
vue @click.native 绑定原生点击事件
2022/04/22 Vue.js
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers