如何在Python中使用壓縮來創建.tar.gz文件?如何使用Python創建完整壓縮的tar文件?
61
A
回答
100
要建立一個.tar.gz
(又名.tgz
)對整個目錄樹:
import tarfile
def make_tarfile(output_filename, source_dir):
with tarfile.open(output_filename, "w:gz") as tar:
tar.add(source_dir, arcname=os.path.basename(source_dir))
72
import tarfile
tar = tarfile.open("sample.tar.gz", "w:gz")
for name in ["file1", "file2", "file3"]:
tar.add(name)
tar.close()
如果你想創建一個TAR.BZ2壓縮文件,只需用」 .tar.bz2" 格式並替換文件的擴展名 「W:GZ」 與 「W:BZ2」。
+1
你應該真的在Python中使用'tarfile.open(..',而不是手動調用'open'和'close',打開常規文件時也是如此 – Sheljohn 2017-03-13 17:15:57
28
您可以撥打tarfile.open與mode='w:gz'
,意思是「打開gzip壓縮寫入」。
您可能需要結合使用.tar.gz
的文件名(name
參數爲open
),但不影響壓縮功能。
順便說一句,你平時用的'w:bz2'
模式得到更好的壓縮,就像tar
平時甚至可以更好地與bzip2
壓縮比它可以與gzip
壓縮。
+4
只需簡單的說明bzip2-壓縮的壓縮包應以「.tar.bz2」結尾 – 2010-01-09 05:23:16
相關問題
- 1. 如何使用compress/gzip和archive/tar創建壓縮的tar歸檔文件?
- 2. 使用C#解壓縮tar文件
- 3. 使用C#解壓縮tar/BZ2文件
- 4. 的Python subprocess.call tar命令後使用未壓縮的文件
- 5. C#使用.tar壓縮
- 6. gzipping一組目錄並創建一個tar壓縮文件
- 7. 如何使用python壓縮Excel文件?
- 8. 如何從許多tar文件解壓縮特定文件並將其壓縮?
- 9. 使用BAT文件將文件解壓縮到完整路徑
- 10. 創建和壓縮文件
- 11. 如何壓縮在Python程序中新創建的文件夾?
- 12. 當創建tar文件時,整個路徑被創建爲tar文件
- 13. Maya Python創建並使用壓縮包?
- 14. tar命令 - 壓縮無文件夾
- 15. 如何使用Gzip(Deflate)創建高度壓縮的文件?
- 16. 如何使用SevenZipSharp創建壓縮的SFX文件?
- 17. 如何解壓縮使用ByteArray.compress創建的zlib文件?
- 18. tar文件沒有完全解壓
- 19. 無法解壓使用zipfile構建的壓縮文件(Python)
- 20. 如何列出Java中壓縮的tar文件的內容
- 21. 如何壓縮沒有目錄的tar.gz中的tar文件?
- 22. Node.js:指定要使用zlib + tar解壓縮的文件
- 23. 如何創建和讀取壓縮文件以及我應該使用哪種壓縮格式的python?
- 24. 如何使用PHP和目標目錄創建壓縮文件?
- 25. 如何使用Python解壓縮zip文件內容(使用壓縮格式)
- 26. IIS 7.5壓縮會創建壓縮文件,但會返回非壓縮文件
- 27. 不能解壓一個完整的目錄使用tar -cvpzf
- 28. 如何創建一個循環,將壓縮文件夾,然後壓縮文件夾「x」的時間量,Python 3.4?
- 29. 使用iOS-libarchive庫解壓縮.tar文件
- 30. 在MATLAB中使用tar壓縮文件夾
焦油不壓縮的數據,它只是包中的文件一起。這是gzip做的實際壓縮。 – 2010-01-09 05:19:50