Я пытаюсь создать скрипт синтаксического анализа, который анализирует огромный текстовый файл (более 2 миллионов строк), сжатый с помощью gunzip.Я только хочу проанализировать диапазон строк в текстовом файле.До сих пор я использовал zgrep -n, чтобы найти две строки, в которых упоминается строка, которая, как я знаю, будет начинать и заканчивать интересующий меня раздел файла.
В моем файле тестового примера, который меня интересует,только чтение в строках с 123080 по 139361. Я нашел Tie :: File для доступа к строкам файла с помощью возвращаемого объекта массива, но, к сожалению, это не сработает для сжатого файла с оружием, с которым я работаю.
Есть ли что-то вроде следующего для заархивированного файла?
use Tie::File
tie @fileLinesArray, 'Tie::File', "hugeFile.txt.gz"
my $startLine = 123080;
my $endLine = 139361;
my $lineCount = $startLine;
while ($lineCount <= $endLine){
my $line = @fileLinesArray[$lineCount]
blah blah...
}