python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法


Posted in Python onJune 10, 2019

默认情况下,tarfile 打包成的 tar.gz 文件会带绝对路径,而很多情况下,我们需要的是相对打包文件夹的路径。

代码:

<pre name="code" class="python"><span style="font-size:18px;">import tarfile
tmp_tar_dir = "/home"
file_name = "test.tar.gz"
tmp_dir = "/home/centos"
soft_name = "php"
tar = tarfile.open(os.path.join(tmp_tar_dir,file_name),"w:gz")
for root,dir,files in os.walk(os.path.join(tmp_dir,soft_name)):
 root_ = os.path.relpath(root,start=tmp_dir)
 #tar.add(root,arcname=root_)
 for file in files:
  full_path = os.path.join(root,file)
  tar.add(full_path,arcname=os.path.join(root_,file))
tar.close()</span>

注意:打包出来的文件,如果原目录总存在空文件夹,则打包出来的文件中不包含此空文件夹。

以上这篇python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中处理字符串的相关的len()方法的使用简介
May 19 Python
Python基于回溯法子集树模板解决选排问题示例
Sep 07 Python
python八皇后问题的解决方法
Sep 27 Python
使用Python快速制作可视化报表的方法
Feb 03 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
Apr 06 Python
Python八皇后问题解答过程详解
Jul 29 Python
Python基础之字符串常见操作经典实例详解
Feb 26 Python
深入了解python列表(LIST)
Jun 08 Python
在keras 中获取张量 tensor 的维度大小实例
Jun 10 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
Sep 30 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
Jan 10 Python
Python快速优雅的批量修改Word文档样式
May 20 Python
python处理“
Jun 10 #Python
python-pyinstaller、打包后获取路径的实例
Jun 10 #Python
详解Python 切片语法
Jun 10 #Python
使用Python OpenCV为CNN增加图像样本的实现
Jun 10 #Python
Python 虚拟空间的使用代码详解
Jun 10 #Python
在Python中过滤Windows文件名中的非法字符方法
Jun 10 #Python
对Python 检查文件名是否规范的实例详解
Jun 10 #Python
You might like
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
Zend Studio使用技巧两则
2016/04/01 PHP
javascript对象之内置对象Math使用方法
2010/04/16 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
JS根据变量保存方法名并执行方法示例
2014/04/04 Javascript
使用node.js 制作网站前台后台
2014/11/13 Javascript
node.js中的fs.utimesSync方法使用说明
2014/12/15 Javascript
JS实现在状态栏显示打字效果完整实例
2015/11/02 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
针对BootStrap中tabs控件的美化和完善(推荐)
2016/07/06 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
2017/06/29 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
React项目动态设置title标题的方法示例
2018/09/26 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
栈和队列数据结构的基本概念及其相关的Python实现
2015/08/24 Python
Python命令行解析模块详解
2018/02/01 Python
Python unittest模块用法实例分析
2018/05/25 Python
如何用Python合并lmdb文件
2018/07/02 Python
Python中的Socket 与 ScoketServer 通信及遇到问题解决方法
2019/04/01 Python
Python从列表推导到zip()函数的5种技巧总结
2019/10/23 Python
python代码打印100-999之间的回文数示例
2019/11/24 Python
解决运行django程序出错问题 'str'object has no attribute'_meta'
2020/07/15 Python
Zavvi美国:英国娱乐之家
2017/03/19 全球购物
eBay澳大利亚站:eBay.com.au
2018/02/02 全球购物
机械设计专业应届生求职信
2013/11/21 职场文书
化学学院毕业生自荐信范文
2013/12/17 职场文书
2014教师“四风问题”对照检查材料思想汇报
2014/09/16 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
高中信息技术教学反思
2016/02/16 职场文书
导游词之天津古文化街
2019/11/09 职场文书
使用HttpSessionListener监听器实战
2022/03/17 Java/Android
vue使用refs获取嵌套组件中的值过程
2022/03/31 Vue.js
Python安装及建立虚拟环境的完整步骤
2022/06/25 Servers