簡體   English   中英

使用python將目錄壓縮到內存中的tar.gz文件中

[英]Compress directory into tar.gz file in memory with python

嘗試將文件系統目錄壓縮為tar.gz文件並將其保存在內存中。 為什么,因為我不想用臨時文件污染文件系統。

我正在研究tarfile包,但我似乎沒有完成它:

import io
import tarfile

fo = io.BytesIO()
tar = tarfile.open(fileobj=fo, mode="w:gz")
tar.add(path)

似乎沒有按我的意願工作......

用這個片段解決:

import io
import tarfile

path = "/tmp/foodir" # this is a directory

file_io = io.BytesIO()
with tarfile.open(fileobj=file_io, mode="w|gz") as tar:
    arcname = os.path.basename(path) # keep path relative (optional)
    tar.add(path, arcname=arcname)
file_io.seek(0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM