質問1
ファイルハンドル(?)をコピーしたい。
Rubyだと
 handle = $stdout
で済むことなんだけど、Perlでは
 my $SOUT = STDOUT;
 print $SOUt "hello"
ってできる?

質問2
print した内容を横取りしたい。
Rubyだとこんなかんじ:
begin
 backup = $stdout
 $stdout = StringIO.new
 # ... print 文を使ったコード ...
 output = $stdout.value
ensure
 $stdout = backup
end