Tôi muốn chuyển hướng các tin nhắn die
đến một tệp riêng biệt để tôi có thể so sánh tệp đó sau để xác định xem có vấn đề gì.Làm cách nào để chuyển hướng đầu ra của hàm chết sang một tệp trong Perl?
Nhưng mã này mang lại cho tôi lỗi:
$ 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.
$
Tôi không muốn làm một 2>
từ người gọi. Có cách nào để chuyển hướng chúng từ bên trong tập lệnh không?
Điều này cũng chuyển hướng cảnh báo() các thông điệp, cảnh báo và bất kỳ thứ gì khác được in tới STDERR. Không chỉ vậy, nếu ai đó đã làm điều này đúng cách bằng cách xác định lại trình xử lý __DIE__, nó có thể thậm chí không chuyển hướng các thông báo die(). –