#!/usr/bin/perl -l use IO::Scalar; my $x = ""; { local *STDERR; tie *STDERR, 'IO::Scalar', \$x; print STDERR "foo"; untie *STDERR } print STDERR "bar"; print "caught: $x"; __END__ bar caught: foo #### #!/usr/bin/perl -l use IO::Scalar; my $x = ""; { local *STDERR; tie *STDERR, 'IO::Scalar', \$x; print STDERR "foo"; } print STDERR "bar"; print "caught: $x"; __END__ caught: foobar #### ------------ :Wq Not an editor command: Wq