2010-10-21 91 views
0

对不起,模糊的问题。如何将文本输出到终端的perl tk文本框?

我有一个perl gui,内置于linux中的tk。我已经在其中建立了一个文本框。我希望将perl脚本的输出显示在文本框中,包括运行perl脚本时显示在终端上的错误或警告。怎么做 ?

回答

0

,你可以:

打开STDERR和STDOUT在内存中的文本文件(必须先关闭它):

close STDOUT; 
open STDOUT, '>', \$variable or die "Can't open STDOUT: $!"; 
close STDERR; 
open STDERR, '>', \$variable or die "Can't open STDERR: $!"; 

更多关于这可能在open - perldoc.perl.org

或挂钩被发现警告和死亡陈述:

$SIG{__WARN__} = sub { PrintThingsToMyLogWin(@_); 1 }; 
$SIG{__DIE__} = sub { PrintThingsToMyLogWin(@_); 1 }; 

但那不会允许您捕捉标准的打印语句。

任何方式,找到解决方案的好运气,并不要犹豫,告诉我们,如果你自己找到它。