#!/usr/bin/perl while ($line = <>){ my ($file, $record) = split /\|/, $line, 2; if ( open(OUTFILE, ">>$file") ) { print OUTFILE $record; } else { die("cannot open $record[0]"); } }