Python压缩文件夹 tar.gz .zip
打包压缩生成 XXX.tar.gz 文件
import os
import tarfile if os.path.exists(outputFileName):
with tarfile.open(outputFileName + ".tar.gz", "w:gz") as tar:
tar.add(sourceDir, arcname=os.path.basename(sourceDir))
open的原型是:
tarfile.open(name=None, mode='r', fileobj=None, bufsize=10240, **kwargs)
tarfile.open的mode有很多种:
| 'r' or 'r:*' | Open for reading with transparent compression (recommended). |
| 'r:' | Open for reading exclusively without compression. |
| 'r:gz' | Open for reading with gzip compression. |
| 'r:bz2' | Open for reading with bzip2 compression. |
| 'a' or 'a:' | Open for appending with no compression. The file is created if it does not exist. |
| 'w' or 'w:' | Open for uncompressed writing. |
| 'w:gz' | Open for gzip compressed writing. |
| 'w:bz2' | Open for bzip2 compressed writing. |
在写打包代码的过程中,使用tar.add()增加文件时,会把文件本身的路径也加进去,加上arcname就能根据自己的命名规则将文件加入tar包
打包压缩生成 XXX.zip 文件
import os
import zipfile zip_file = zipfile.ZipFile(report_path + ".zip", "w", zipfile.ZIP_DEFLATED)
for dirpath, dirnames, filenames in os.walk(report_path): # report_path是要压缩的文件夹
fpath = dirpath.replace(report_path, '')
fpath = fpath and fpath + os.sep or ""
for filename in filenames:
zip_file.write(os.path.join(dirpath, filename), fpath + filename) # 只能一个文件一个文件地往里写
zip_file.close()
Python压缩文件夹 tar.gz .zip的更多相关文章
- windows系统下压缩文件成tar.gz格式的方法
tar.gz 是linux和unix下面比较常用的格式,几个命令就可以把文件压缩打包成tar.gz格式,然而这种格式在windows并不多见,WinRAR.WinZip等主流压缩工具可以释放解开,却不 ...
- 【Python】使用Python压缩文件/文件夹
[Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...
- Python压缩文件/文件夹
[Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...
- Java 压缩文件夹工具类(包含解压)
依赖jar <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons ...
- Python打包文件夹的方法小结(zip,tar,tar.gz等)
本文实例讲述了Python打包文件夹的方法.分享给大家供大家参考,具体如下: 一.zip ? 1 2 3 4 5 6 7 8 9 10 11 import os, zipfile #打包目录为zip文 ...
- java批量解压文件夹下的所有压缩文件(.rar、.zip、.gz、.tar.gz)
// java批量解压文件夹下的所有压缩文件(.rar..zip..gz..tar.gz) 新建工具类: package com.mobile.utils; import com.github.jun ...
- linux zip,tar压缩文件夹 忽略 .git 文件夾
linux zip 忽略 .git 文件夾 # zip 命令 zip -r bitvolution.zip bitvolution -x *.git* # tar命令压缩文件夹忽略 .git文件夹 t ...
- 基于Python——实现解压文件夹中的.zip文件
[背景]当一个文件夹里存好好多.zip文件需要解压时,手动一个个解压再给文件重命名是一件很麻烦的事情,基于此,今天介绍一种使用python实现批量解压文件夹中的压缩文件并给文件重命名的方法—— [代码 ...
- AIX上解压缩.tar.Z, .tar.gz, .zip及.tgz
在AIX上最常见的压缩文件就是.tar檔了,而除了tar文件以外,有时会遇到数据是用其它的压缩文件格式,所以偶顺手整理了一些常见的压缩文件格式,在AIX要怎么解压缩 : · .tar.Z fil ...
随机推荐
- Ubuntu下面的docker开启ssh服务
选择主流的openssh-server作为服务端: root@161f67ccad50:/# apt-get install openssh-server -y Reading package lis ...
- Python 测试
(1)import doctest doctest.testmod(verbose=True) (2) pip install tests
- Rx操作符
[Rx操作符] 1.Observable.from()方法,它接收一个集合作为输入,然后每次输出一个元素给subscriber: Observable.from("url1", & ...
- js中的全局变量
在js中有3中声明全局变量的方式 第一种使用var+变量名,在方法外部声明: var msg; //默认值undefined $(function(){ setmsg(); showmsg(); }) ...
- ezmorph将一种对象转换成另外一种对象
EZMorph支持原始数据类型(Primitive),对象(Object),多维数组转换与DynaBeans的转换.兼容JDK1.3.1,整个类库大小只有76K左右. 在Java EE开发常用的str ...
- angularjs $injector:nomod
参考 http://blog.163.com/gis_warrior/blog/static/19361717320153111134135/ 检查是否有[],或者是否多次定义同一个module 标准 ...
- Perl 随机数据生成
问题:在IC设计及验证过程中,经常会遇到mem初始化的问题,这时候需要产生hex 的文件,本程序实现这种需求,只需要输入行数,及hex文件的宽度即可. print"Hello World!\ ...
- 【转】自动化测试框架: pytest&allure ,提高自动化健壮性和稳定性
序 在之前,我写过一个系列“从零开始搭建一个简单的ui自动化测试框架(pytest+selenium+allure)”,在这个系列里,主要介绍了如何从零开始去搭建一个可用的自动化工程框架,但是还缺乏了 ...
- jakson
Java下常见的Json类库有Gson.JSON-lib和Jackson等,Jackson相对来说比较高效,在项目中主要使用Jackson进行JSON和Java对象转换,下面给出一些Jackson的J ...
- PHP20-challenge10
今天咩,说一个关于php的题目,里面主要主要牵扯到截断的知识点,这让我多了解了一些机制. 1.截断 截断,简单来说就是16进制的00,代表空.其实,那些输出语句函数就是凭借语句后面这个我们看不 ...