В Perl, как я могу записать вывод Dumper в файл? - PullRequest
4 голосов
/ 14 июля 2009

Как я могу заставить Data::Dumper записать дамп в файл?

Ответы [ 3 ]

22 голосов
/ 14 июля 2009

Не забывайте, что вы можете указать дескриптор файла для print, как в

print $LOG Dumper( \%some_complex_hash );

или используйте Файл :: Slurp :

write_file 'mydump.log', Dumper( \%some_complex_hash );

Дальнейшие мысли: Возможно, вы захотите использовать:

warn Dumper( \%some_complex_hash );

и перенаправление стандартной ошибки в файл при вызове скрипта (как это сделать зависит от оболочки). Например:

 C:\Temp> sdf.pl 2>dump
8 голосов
/ 14 июля 2009

Использование печать

print FILE Data::Dumper->Dump($object);
5 голосов
/ 14 июля 2009

Вопрос немного неясен, но вы ищете что-то подобное?

open my $FH, '>', 'outfile';
print $FH Dumper(\%data);
close $FH;

Вы можете восстановить данные позже, используя eval.

...