I've recently started keeping
all my mail (all 140MB worth of text!) on my web hosting provider's server, in order that I might switch easily between
MUAs and client machines.
While I trust them to do backups, I don't trust them so much that I don't want my own backups to have my mail folders too. Therefore, a very simple script to backup IMAP folders to plain files. (This of course is only useful if you don't have access to the folders themselves...)
#!/usr/bin/perl
use Net::IMAP::Simple;
$| = 1;
$server = new Net::IMAP::Simple( 'your.imap.server' );
$server->login( 'username', 'password' );
@folders = $server->mailboxes();
foreach $folder ( @folders )
{
open (FOLDOUT,">~/IMAPbk/$folder");
$count = $server->select( $folder );
print "$folder has $count messages, fetching";
foreach $msg ( 1 .. $count )
{
print ".";
$fh = $server->getfh( $msg );
print FOLDOUT <$fh>;
close $fh;
}
print "\n";
}
$server->quit();