A collection of utilities for maildirs
  1 Screenshot
E-mail is the 'flow' in the work flow of many people. Consequently, one spends a lot of time searching for old e-mails, to dig up some important piece of information. With people having tens of thousands of e-mails (or more), this is becoming harder and harder. How to find that one e-mail in an evergrowing haystack?

Enter mu.

'mu' is a set of command-line tools for Linux/Unix that enable you to quickly find the e-mails you are looking for. First, a tool called mu-index fills a database with information about all your e-mails. After that, you can easily search for them, using mu-find and its dedicated query language.

For example:

 # get smith's mails with attachments from the last few weeks
 $ mu-find d:1m- F:a

 # get the mails mentioning some book on a mailing list
 $ mu-find x:'Fall of Hyperion' M:'BookClub'

The way to express the searches is a bit cryptic at first, but easy to learn (in the author's humble opinion); the mu-find manpage discusses syntax and usage, and has lots of examples.

Periodically, you can do a quick update of database by running mu-index again. You can combine mu searching with your existing e-mail program (e.g. mutt); the mu documentation has the details.

mu is free software released under GPLv3, that runs on Unix/Linux-based systems, and combines the power of the SQLite database and the Xapian text indexing engine. Important: for mu to work, your mails must be stored in a set of maildirs

For a practical introduction, there is a short HOWTO which might be helpful. For technical discussion, the author's blog might be interesting, as it goes through various aspects of designing and implementing mu.

Main features:

  • u-find:
  • search for sender and recipient; subject, message-id; message date, both absolute dates, intervals and relative dates; message size, message flags (new/replied/trashed etc.) message body text; attachment / signed / encrypted; message priority
  • define bookmarks for search queries;
  • output to stdout, or as maildirs with links to the original messages; can also output the literal SQL-queries.
  • mu-index:
  • scan messages in recursive Maildirs, Maildir++ or separate files;
  • extensive performance tuning option (--tune-...); the defaults should be fine, but tunable for specific performance vs memory use footprint;
  • only changed messages are considered when re-indexing;

last updated on:
April 1st, 2013, 5:50 GMT
license type:
GPL v3 
developed by:
Dirk-Jan C. Binnema
ROOT \ Communications \ Email
Download Button

In a hurry? Add it to your Download Basket!

user rating



Rate it!
What's New in This Release:
  • mu/mu4e now supports 'related' messages (a la Gmail).
  • Support for querying specific mailing lists was added.
  • Guile scripts were integrated ('mu script').
  • Support for embedded tags was improved, 'human dates' were implemented, and many other improvements were made.
read full changelog

Add your review!