use Filter::Handle qw/subs/; open (*FH, ">OUTPUT_PATH/filename.txt") or die "Could open filename.txt:$!"; my $output_file = *FH; Filter \*STDOUT, sub { print $output_file $_; };