my $buffer = "first line\n"; foreach my $do (keys %doing) { # DO DB query for $do where fo $do can be serveral bodylines; $buffer .= $bodyline . "\n"; } $buffer .= "last line\n"; # now you know the file name open FILE, ">$name" or die "bla bla"; print FILE $buffer; close FILE;