#!/usr/bin/perl -w use strict; my %files; while () { $_=~/^(\w+): (\d) (\w+)/; unless ($files{$1}) { open $files{$1}, ">$1.tmp" || die "Couldn't open $1.txt...\n"; } print $files{$1} "$2 $3\n"; # No dice! (syntax error) }