http://qs321.pair.com?node_id=391654


in reply to grab 'n' lines from a file above and below a /match/

I know that I'm showing up a little bit late to the party, but wouldn't Tie::File work for this?

use strict; use Tie::File; # some variables get set up here since we're using strict (wink) tie @lines, 'Tie::File', 'GWSvc.log', memory=>$some_small_number; for ($i=0; $i<$#lines; $i++) { if (/c9391b56-b174-441b-921c-7d63/) { for ($j=$i-5; $j <= $i+5; $j++) { print $lines[$j]; } } }

I'm sure there are a million ways to make it look cleaner, but I'm also very sleepy right now. This seems like it would solve the problem, though. I'm really a big fan of Tie::File after having been 'corrected' on my non-usage of it not too long ago. Now I find uses for it everywhere.