本文介绍了如何将die函数的输出重定向到Perl中的文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将die
消息重定向到一个单独的文件,以便以后可以比较该文件以确定出了什么问题.
I want to redirect the die
messages to a separate file so that I can compare that file later to determine what went wrong.
但是这段代码给了我错误:
But this code gives me errors:
$ cat test.pl
use strict;
use warnings;
my $log = "msglog.log";
die $log "DEAD$!";
$ perl test.pl
Missing comma after first argument to die function at test.pl line 5, near ""DEAD$!";"
Execution of test.pl aborted due to compilation errors.
$
我不想从呼叫者处执行2>
.是否可以通过脚本将它们重定向?
I do not want to do a 2>
from the caller. Is there someway to redirect them from within the script?
推荐答案
Perl的die
打印到STDERR
,因此您可以将STDERR
重定向到文件.
Perl's die
prints to STDERR
so you could redirect STDERR
to a file.
#!/usr/bin/env perl
# the path above depends on your system
open(STDERR, ">>", "errlog.log");
die "Hello";
这篇关于如何将die函数的输出重定向到Perl中的文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!