[英]Python write text to .tar.gz
我希望用python直接在.tar.gz文件中編寫一個文本文件(OnTheFly)。 最好的是像fobj = open (arg.file, "a")
這樣的解決方案來附加文本。
我想將此功能用於您不允許拆分的長日志文件。
提前致謝
是的,這是可能的,但很可能不是你想要使用它的方式。
.tar.gz
實際上是兩件事: gz
或gzip
用於壓縮,但是這個工具只能壓縮單個文件 ,所以如果你想將多個文件壓縮成壓縮檔案,你需要先加入這些文件。 這就是tar
所做的,它需要多個文件並將它們連接到一個存檔。
如果你有一個長日志文件,只需gzip
它會更容易。 為此,Python有gzip
模塊,你可以直接寫入壓縮文件:
import gzip
with gzip.open('logfile.gz', 'a') as log:
# Needs to be a bytestring in Python 3
log.write(b"I'm a log message.\n")
如果你肯定需要寫入tar
-archive,你可以使用Python的tarfile
模塊。 但是,此模塊不支持附加到文件(模式'a'
),因此tarfile可能不是日志記錄的最佳解決方案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.