#!/usr/bin/perl use strict; use warnings; my @DATA_FH_ARR = (tell DATA); my $i=1; while (){ if (/__DATA__/) { $DATA_FH_ARR[$i++]=tell DATA; } print; } print "\n\@DAT_FH_ARR: @DATA_FH_ARR\n"; my $line; seek DATA, $DATA_FH_ARR[2], 0; $line= ; print '1:', $line; $line= ; print '2:', $line; seek DATA, $DATA_FH_ARR[3], 0; $line= ; print '1:', $line; $line= ; print '2:', $line; __DATA__ ab __DATA__ ab __DATA__ ab __DATA__ lotsa junk nothing #### ab __DATA__ ab __DATA__ ab __DATA__ lotsa junk nothing @DAT_FH_ARR: 468 480 493 505 1:A__ 2:ab 1:ATA__ 2:lotsa junk #### ab __DATA__ ab __DATA__ ab __DATA__ lotsa junk nothing @DAT_FH_ARR: 470 482 495 507 1:A__ 2:ab 1:ATA__ 2:lotsa junk