#!/usr/bin/perl use strict; use Net::IMAP::Simple; use MIME::Parser; my $out_dir = "/tmp"; my $server = new Net::IMAP::Simple('localhost'); $server->login('testuser','password'); my $parser = MIME::Parser->new; $parser->output_dir($out_dir); # Create Archive folder if non-existent $server->select('Archive') || $server->create_mailbox('Archive'); # Grab number of messages my $number_of_messages = $server->select('INBOX'); # Print messages, copy to Archive, delete message foreach my $msg (1..$number_of_messages) { my $msg_fh = $server->getfh($msg); my $entity = $parser->parse($msg_fh); for my $part ($entity->parts) { if ($part->mime_type =~ /tiff/) { print $part->bodyhandle->path, "\n"; print "$part->bodyhandle->path\n"; } } $entity->purge; #$server->copy($msg,'Archive'); #$server->delete($msg); } $server->quit;