簡體   English   中英

在壓縮文件上使用sed

[英]Using sed on a compressed file

我已經編寫了一個文件處理程序,現在它需要從一個壓縮文件中讀取(.gz解壓縮的文件可能會變成2TB),

是否有sed等效文件(zcat / cat)之類的壓縮文件,否則有效執行以下操作的最佳方法是什么?

    ONE=`zcat filename.gz| sed -n $counts`

$ counts:計數器讀取(逐行)

上面的方法有效,但是對於大文件來說相當慢,因為我需要讀取每一行並在某些字段上執行匹配。

謝謝

編輯

盡管沒有直接幫助,但這里有一組zcommands

http://www.cyberciti.biz/tips/decompress-and-expand-text-files.html

好吧,您可以具有更高的速度(例如,使用未壓縮的文件)或更多的可用空間(即,使用壓縮的文件和顯示的管道)...對不起。 使用壓縮文件總會有開銷。

如果您了解壓縮格式的內部結構,則可以編寫一個模式匹配器,該模式匹配器可以在不完全解壓縮的情況下對壓縮數據進行操作,而是通過簡單地從壓縮數據確定模式是否存在於給定片段中來解壓縮的數據。

如果模式根本沒有任何復雜性,這聽起來像是一個相當復雜的項目,因為您將不得不處理兩個(或更多)單獨的解壓輸出的組合可以滿足該模式的情況。

暫無
暫無

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

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