while ($position <= $lenOfFile - 64) { sysread NOTFOUND, my $record,64; push(@records, chomp($record)); $position += 64; sysseek NOTFOUND, $position, 0; } foreach my $currentrecord (@records) { $opcode = unpack ("H*", substr($currentrecord,0,1)); $subcode = unpack ("H*", substr($currentrecord, 1,1)); syswrite DEBUG, $opcode . "\t" . $subcode . "\n"; if ($opcode eq "60" and $subcode eq "01" ) { $plu = unpack("H*", substr($currentrecord,2,7)); syswrite NOTOUT, $plu . "\t" . $ymd . "\n"; }