您的位置:首页 > 编程语言 > Python开发

Python下使用tarfile模块来实现文件归档压缩与解压

2014-12-15 22:37 751 查看
Python下使用tarfile模块来实现文件归档压缩与解压

部分转自:http://www.diybl.com/course/3_program/python/20110510/555345.html

Tarfile.open(cls, name=None, mode='r', fileobj=None, bufsize=10240, **kwargs) method of __builtin__.type instance
Open a tar archive for reading, writing or appending. Return
an appropriate TarFile class.

mode:
'r' or 'r:*' open for reading with transparent compression
'r:' open for reading exclusively uncompressed
'r:gz' open for reading with gzip compression
'r:bz2' open for reading with bzip2 compression
'a' or 'a:' open for appending, creating the file if necessary
'w' or 'w:' open for writing without compression
'w:gz' open for writing with gzip compression
'w:bz2' open for writing with bzip2 compression

'r|*' open a stream of tar blocks with transparent compression
'r|' open an uncompressed stream of tar blocks for reading
'r|gz' open a gzip compressed stream of tar blocks
'r|bz2' open a bzip2 compressed stream of tar blocks
'w|' open an uncompressed stream for writing
'w|gz' open a gzip compressed stream for writing
'w|bz2' open a bzip2 compressed stream for writing

1.压缩,创建tar.gz包

#!/usr/bin/env python

import os
import tarfile

#创建压缩包名

tar = tarfile.open("/tmp/tartest.tar.gz","w:gz")

#创建压缩包

for root,dir,files in os.walk("/tmp/tartest"):

for file in files:
fullpath = os.path.join(root,file)
tar.add(fullpath)

tar.close()

2.解压tar.gz包

#!/usr/bin/env python

import tarfile

tar = tarfile.open(“/tmp/tartest.tar.gz”)
names = tar.getnames()

for name in names:
tar.extract(name,path=”/tmp”)

tar.close()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: