Т.е. нужно вывести и на экран в браузер, и в файл?
Так в чём проблема, распечатай страницу два раза, один раз в файл, один раз в STDOUT|браузер и все.
&print_html;
open (TOFILE, "> c:/test.html");
select TOFILE;
&print_html;
select STDOUT;
close(TOFILE);
sub print_html {
print "\\n";
print " \\n";
print " Lala\\n";
print " \\n";
print " \\n";
print " TEST
\\n";
print " \\n";
print "\\n";
}