sub test { print "testing\n"; }
如果有一种情况我想让它打印到stderr而不是stdout,有没有办法我可以调用子程序来做这个?或者我可以将输出捕获到变量然后使用警告?我对perl很新.
select
select(STDERR); &test; # send output to STDERR select(STDOUT); # restore default output handle
select函数返回先前选择的文件句柄,因此您可以捕获它并在以后恢复它.
my $orig_select = select(STDERR); &test; select($orig_select);