欢迎访问宙启技术站
智能推送

使用Python的tarfile库打开tar文件

发布时间:2024-01-04 13:40:13

tarfile库是Python中用于创建、读取和提取tar文件的标准库。tar文件是一种存档文件格式,可以将多个文件和目录组合到一个文件中。

在使用tarfile库之前,我们需要导入tarfile模块:

import tarfile

接下来,我们可以使用tarfile.open()函数来打开tar文件。该函数接受两个参数:文件名和模式。模式可以是'r'(只读),'w'(创建新文件)或'a'(追加到现有文件)。以下是一些使用例子:

## 1. 打开tar文件并读取其中的文件列表

# 打开tar文件
with tarfile.open('data.tar.gz', 'r') as tar:
    # 获取tar文件中的文件列表
    file_list = tar.getnames()
    print(file_list)

## 2. 逐个提取tar文件中的文件

# 打开tar文件
with tarfile.open('data.tar.gz', 'r') as tar:
    # 逐个提取文件
    for file in tar:
        tar.extract(file)

## 3. 创建一个新的tar文件并添加文件

# 创建一个新的tar文件
with tarfile.open('new.tar', 'w') as tar:
    # 添加文件到tar文件
    tar.add('file1.txt')
    tar.add('file2.txt')

## 4. 添加文件夹到tar文件

# 创建一个新的tar文件
with tarfile.open('new.tar', 'w') as tar:
    # 添加文件夹到tar文件
    tar.add('my_folder')

## 5. 压缩一个目录

# 创建一个新的tar文件
with tarfile.open('my_folder.tar.gz', 'w:gz') as tar:
    # 添加整个目录到tar文件
    tar.add('my_folder')

## 6. 从tar文件中读取文件内容

# 打开tar文件
with tarfile.open('data.tar.gz', 'r') as tar:
    # 读取并打印文件内容
    file_content = tar.extractfile('file.txt').read()
    print(file_content)

以上是一些常见的使用例子,可以根据实际需求进行适当的修改和扩展。使用tarfile库,我们可以很方便地处理tar文件,包括创建、读取和提取文件。