列出用户在Cyrus IMAP中有权访问的邮箱?

我想知道是否有办法列出用户通过cyradm(或其他方式)访问的所有邮箱。 可以运行lam user.%并parsing输出,但是我认为糟透了:)

回答IMAP::Admin

 #!/usr/bin/perl use IMAP::Admin; $imap = IMAP::Admin->new('Server' => 'localhost', 'Login' => 'cyrus', 'Password' => 'cyrus', ); my $finduser = "root"; # the user you search for my @mailboxes = $imap->list("user.%"); foreach my $mailbox (@mailboxes) { my %list = $imap->get_acl($mailbox); if (defined($list{$finduser})) { print $mailbox."\n"; } }