爲前abc.tar.gz有如何在不解壓縮內容的情況下在.tar.gz壓縮文件中查看特定文件的內容?
ABC/FILE1.TXT
ABC/FILE2.TXT
ABC/ABC1/file3.txt
ABC/ABC2/file4.txt
我需要在不提取文件的情況下讀取/顯示file3.txt的內容。
感謝任何輸入。
爲前abc.tar.gz有如何在不解壓縮內容的情況下在.tar.gz壓縮文件中查看特定文件的內容?
ABC/FILE1.TXT
ABC/FILE2.TXT
ABC/ABC1/file3.txt
ABC/ABC2/file4.txt
我需要在不提取文件的情況下讀取/顯示file3.txt的內容。
感謝任何輸入。
import tarfile
spam = tarfile.open("abc.tar.gz")
if "abc/abc1/file3.txt" in spam.getnames():
with spam.extractfile("abc/abc1/file3.txt") as ham:
print ham.read()
查看tarfile。
感謝ans,但我的投票去bash,因爲我很容易找到特定文件上的模式。 – szhak 2010-07-30 19:21:33
夠公平 - 儘管你可以在python中做同樣的事情; 'getnames'返回檔案中的文件數組,您可以搜索/分析。這個問題是否有任何特殊的原因標記爲「python」,btw? = p – katrielalex 2010-07-30 20:35:01
tar -xzf mytar.tar.gz --to-command=cat filename.in.archive
你的幫助。我正在尋找特定文件中的某種模式。管到csplit幫我 tar -xzf file.tar.gz -O file/file.txt | csplit -s - 「/ regex /」{no_of_times}>/dev/null 謝謝 – szhak 2010-07-30 19:25:57
我認爲這是一回事......你的意思是說你不想把它解壓縮到磁盤上的文件上? – 2010-07-30 08:20:09
沒有壓縮文件是一個大文件,裏面有太多的文件夾和文件,我沒有足夠的空間/使用整個未壓縮的文件,我也不需要tar.gz中特定文件的全部內容。我發現ans雖然tar -xzf file.tar.gz -O文件/特殊文件.txt和管道到csplit模式。謝謝! – szhak 2010-07-30 19:17:39