open my $inFile, '<', $logFileName or die "Failed to open $logFileName: $!"; my %index; my $lastPos = 0; while (<$inFile>) { next unless /^(\d{14})$/; $index{$1} = [$., $lastPos]; } continue { $lastPos = tell ($inFile); }