in reply to Extract field from pipe delimited flat file

maybe ... (untested code ahead) :
while (my $line = <INPUT>) { my ($time,$email,$name,@addr) = split(/\|/,$line); # use $email for cool stuff here # or add to an array for mailing. }

As for mailing multiple recipients, i do suggest using Net::SMTP, but you could pass a coma seperated list of addresses to something like sendmail.
i had a memory leak once, and it ruined my favorite shirt.