python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
默认情况下,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 实现tar文件压缩解压的实例详解
python 实现tar文件压缩解压的实例详解 压缩文件: import tarfile import os def tar(fname): t = tarfile.open(fname + ".tar.gz", "w:gz") for root, dir, files in os.walk(fname): print root, dir, files for file in files: fullpath = os.path.join(root, file) t.
-
python中将zip压缩包转为gz.tar的方法
由于同事电脑上没有直接可以压缩gz.tar格式的压缩软件,而工作中这个又时常需要将zip文件转换为gz.tar格式,所以常常将压缩为zip格式的文件发给我来重新压缩成gz.tar格式发给他,能偷懒就不想动手,就用python的tarfile和zipfile包完成了一个将zip转换成gz.tar格式的小脚本: 代码比较简单,也就几行,但是写的时候因为绝对路径的问题浪费了点时间,代码水平还是有待提高. #coding: utf-8 import os import tarfile import zi
-
Python打包文件夹的方法小结(zip,tar,tar.gz等)
本文实例讲述了Python打包文件夹的方法.分享给大家供大家参考,具体如下: 一.zip import os, zipfile #打包目录为zip文件(未压缩) def make_zip(source_dir, output_filename): zipf = zipfile.ZipFile(output_filename, 'w') pre_len = len(os.path.dirname(source_dir)) for parent, dirnames, filenames in os.
-
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
默认情况下,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_
-
Go语言压缩和解压缩tar.gz文件的方法
本文实例讲述了Go语言压缩和解压缩tar.gz文件的方法.分享给大家供大家参考.具体分析如下: golang处理压缩包,最常用的就是tar.gz了,这里写了一个测试一下. 压缩文件: 复制代码 代码如下: package main import ( "fmt" "os" "io" "archive/tar" "compress/gzip" ) func main()
-
Python安装官方whl包和tar.gz包的方法(推荐)
Windows环境: 安装whl包:pip install wheel -> pip install **.whl 安装tar.gz包:cd到解压后路径,python setup.py install Linux环境: 安装whl同上 安装tar.gz:cd到解压后路径,./configure -> make -> make install 以上这篇Python安装官方whl包和tar.gz包的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家
-
NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法
在编程之前,一定要有一个信条:代码是为了减少工作量而生的,重复枯燥的工作是不能容忍的. 需求 这是由上篇文章衍生出的需求,我已经将一个文件夹内所有的文件名转译为英文,但我在页面上还需要将这些图片引入加载.如果一个一个手写到程序里,未免有点劳心劳神.那么何不将这个文件夹按照存放路径变成一个相应的JSON在前端请求并渲染呢? 说干就干. 文件夹的路径如下所示: 一级路径:test 二级路径:A,B,C...共十三个文件夹 三级路径:每个二级路径下有3-8个文件夹不等 四级路径:a.jpg,b.jpg
-
Python安装tar.gz格式文件方法详解
这篇文章主要介绍了Python安装tar.gz格式文件方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 有的库没有找到对应的.whl格式文件,只有.tar.gz格式文件,接下来总结下该类型文件的安装. 以robotframework-ride-1.7.4.tar.gz为例 (1)下载robotframework-ride-1.7.4.tar.gz文件,将此文件放到Python下的Lib文件中: (2)进入已解压的robotframewor
-
ASP.NET 上传文件到共享文件夹的示例
目录 上传文件代码 web.config 工具方法 常量 具体上传文件代码 创建共享文件夹参考资料 上传文件代码 web.config <!--上传文件配置,UploadPath值一定是服务器ip,内网ip最好--> <add key="UploadPath" value="\\172.21.0.10\File" /> <add key="DownloadPath" value="http://x.x.x.
-
python如何将自己的包上传到PyPi并可通过pip安装的方法步骤
目录 一.创建包 1.1 包概念简述 1.2 创建包结构 二.上传前准备 2.1 完善包相关信息 2.2 创建可供分发的包 三.上传包至PyPi 3.1 使用PyPi测试环境先熟悉上传步骤 3.2 正式上传至PyPi 四.使用pip安装测试 4.1 安装PyPi测试环境的包 4.2 安装PyPi正式环境的包 五.包版本更新 当逐渐在用python开发项目或者日常使用时,一般需要大量使用别人提供的包,这些包能高效的帮助我们快速高效的完成指定任务或者需求,不过有时也会想,自己如果能够把自己的代码打包
-
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
如下所示: import cv2 import os import numpy as np root_path = "I:/Images/2017_08_03/" dir = root_path+"images"+"/" count = 0 for root,dir,files in os.walk(dir): for file in files: srcImg = cv2.imread(root_path+"images"+
-
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
我就废话不多说了,直接上代码吧! import Image from datetime import datetime import os str = '/home/dltest/caffe/examples/sgg_datas/images/result_test/zutest/' + datetime.now().strftime("%Y%m%d_%H%M%S") while True==os.path.exists(str): str = str + datetime.now()
随机推荐
- Perl批量下载Gmail附件的代码
- js 取消超链接的方法小结
- Jquery easyui开启行编辑模式增删改操作
- ExtJs异步无法向外传值和赋值的完美解决办法
- 详解Java的Spring框架中的注解的用法
- iOS自定义UICollectionViewLayout实现瀑布流布局
- 如何在smarty中增加类似foreach的功能自动加载数据
- PHP获取页面执行时间的方法(推荐)
- php+mysql+jquery实现简易的检索自动补全提示功能
- ASP实现头像图像随机变换
- 基于Android XML解析与保存的实现
- 用于判断用户注册时,密码强度的JS代码
- GMap.Net开发之自定义Marker使用方法
- AJAX和WebService实现邮箱验证(无刷新验证邮件地址是否合法)
- ubuntu上配置Nginx+PHP5 FastCGI服务器配置
- Mysql存储java对象实例详解
- php中require和require_once的区别说明
- zookeeper watch机制的理解
- Spring boot实现文件上传实例(多文件上传)
- PHP 设计模式系列之 specification规格模式