История изменений
Исправление vtVitus, (текущая версия) :
если ты парсаешь mbox, то лучше взять perl ибо тут 20 строк на всю программу. все модуля есть в дебиан.
#!/usr/bin/perl -w
use strict;
use Mail::Mbox::MessageParser;
use Email::Simple;
Mail::Mbox::MessageParser::SETUP_CACHE({ 'file_name' => '/tmp/cache' } );
my $mbox="/var/mail/vitus";
my $mboxHandle = new FileHandle($mbox);
my $folderReader =
new Mail::Mbox::MessageParser( {
'file_name' => $mbox,
'file_handle' => $mboxHandle,
'enable_cache' => 1,
'enable_grep' => 1,
} );
die $folderReader unless ref $folderReader;
my $count = 0;
while(!$folderReader->end_of_file()) {
my $email = $folderReader->read_next_email();
my $from = new Email::Simple($$email)->header('FROM');
print $from, "\n";
$count = $count + 1;
}
print "Email count: $count\n";
Исходная версия vtVitus, :
если ты парсаешь mbox, то лучше взять perl ибо тут 20 строк на всю программу. все модуля есть в дебиан.
#!/usr/bin/perl -w
use strict;
use Mail::Mbox::MessageParser;
use Email::Simple;
Mail::Mbox::MessageParser::SETUP_CACHE({ 'file_name' => '/tmp/cache' } );
my $mbox="/var/mail/vitus";
my $mboxHandle = new FileHandle($mbox);
my $folder_reader =
new Mail::Mbox::MessageParser( {
'file_name' => $mbox,
'file_handle' => $mboxHandle,
'enable_cache' => 1,
'enable_grep' => 1,
} );
die $folder_reader unless ref $folder_reader;
my $count = 0;
while(!$folder_reader->end_of_file()) {
my $email = $folder_reader->read_next_email();
my $from = new Email::Simple($$email)->header('FROM');
print $from, "\n";
$count = $count + 1;
}
print "Email count: $count\n";