#!/usr/bin/perl use strict; use warnings; my $stdout_mixed_with_stderr = `perl print_and_warn.pl 3>&1 2>&3 3>&- 1>&-`; print "BEGIN\n\n$stdout_mixed_with_stderr\nEND\n"; # output below __END__ BEGIN warning 1 warning 2 warning 3 warning 4 warning 5 warning 6 warning 7 warning 8 warning 9 warning 10 END