How do I print to more than one file at once?

If you only have to do this once, you can do this:

    for $fh (FH1, FH2, FH3) { print $fh "whatever\n" }

But to connect up to one filehandle to several output filehandles, it's easiest to use the tee program if you have it:

    open (FH, "| tee file1 file2 file3");

And let it take care of the multiplexing. Otherwise you'll have to write your own multiplexing print function--or your own tee program -- or use mine, at CPAN/authors/id/TOMC/scripts/tct.gz, which is written in Perl.

In theory a IO::Tee class could be written, but to date we haven't seen such.