Needle in a Haystack

Searching Many Mailboxes

If you need to look into more than one mailbox, there are two ways to do it. The easiest way is to copy all of mailboxes manually into a new mailbox with any email client and run the script only on the new folder. The other method is to call the script inside a loop from another script, which could look more or less like this:

for MAILBOX in mailbox1 mailbox2...
  attach-extractor.sh $MAILBOX $MAILBOX-target

This is also the way to go when, for whatever reason, you need to know the mailbox from which an attachment came.

Searching Just a Few Messages

If you are sure that the attachment(s) you are looking for are somewhere inside a specific thread, or from a specific person, processing a whole mailbox to extract them would be a waste of time. As in the previous case, you can copy only those specific messages into a new mailbox and launch the script on it. Although still overkill, this method works with any email client.

A more efficient solution, instead, is to tag all those messages and tell your email client to find and save all the attachments they contain, all by themselves. A StackExchange post shows you how to write a Mutt macro that does this [4].

Extracting Attachments On Arrival

Sometimes it is useful to have all email attachments extracted and saved to a dedicated folder automatically, the moment each email arrives. This is possible by configuring the procmail tool (explained in detail online [5]).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Charly's Column

    Charly loves to be organized, but he also likes to have access to mail that reached him when the dinosaurs were still roaming the earth.

  • Mutt for Beginners

    Mutt, a command-line email client, can do anything a desktop client can with less overhead and a smaller attack surface. Here's how to get started.

  • Archiving Email

    Email archiving involves more than just backing up your email directories. It is also a question of classifying the email and making it easier for users to find their way around overfilled email folders.

  • Hypermail

    Hypermail converts email messages to HTML and allows you to group your messages in tidy archives.

  • Perl: IMAP Chat Log

    Are you interested in storing, organizing, and searching instant messaging conversations on your IMAP server? The Perl script in this month’s column can help you do just that.

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News