3

我正在使用 Perl 模块Mail::Box::Manager从 Maildir 读取消息并将它们移动到另一个目录。一旦脚本完成处理 Maildir 中的邮件消息,它似乎也会删除 cur/ 和 new/ Maildir 目录,并且需要重新创建 Maildir 文件/目录。

我不希望脚本删除文件夹并重新创建 Maildir 结构。

我有一些简单的东西:

#!/usr/bin/perl
use Mail::Box::Manager;

my $cnt = 0;
my $mgr = Mail::Box::Manager->new;
my $folder = $mgr->open( folder => '/home/vmail/mailfolder/',
                     access => 'rw',
                     type => 'maildir',
                     log => 'DEBUG',
                    );

foreach my $msg ( $folder->messages ) {
    # ... doing some processing of $msg here, then, move the mail for storage

    my $filename = $msg->filename || "NA";
    $filename =~ m#(.*)/new/(.*)$#;

    $mgr->moveMessage("/dir/$filename", 
                      $folder->message($cnt), 
                      create => 1 );
    $cnt++;
}

$folder->close();

任何建议都非常受欢迎。谢谢。

4

1 回答 1

5

添加

remove_when_empty => 0,

$mgr->open来电。

于 2010-09-22T16:13:44.617 回答