...a simple email archiver...

| Description | Requirements | Release notes | Download | Bugs | Contributions | Mailing lists | Copyright | Project summary | References |


Archmbox is a simple email archiver written in perl; it parses one or more mailboxes, selects some or all messages and then performs specific actions on the selected messages.
At this time archmbox supports mbox and mbx mailbox formats.

Four different modes are available:
  • list mode, which is useful to list all selected messages before archmbox performs the real operations (archiving or deleting)
  • kill mode, if messages should be deleted from the mailbox(es) rather than archived
  • archive mode, to archive the selected messages in a different mailbox
  • copy mode, to copy the selected messages from the source mailbox
Messages selection is based upon a date criteria; an absolute date or a days offset can be specified. It is also possible to refine the selection using regular expressions on the header fields of the message.
All archived messages are stored in a new mailbox with the same name of the original one plus .archived as extension (this is the default, but can be changed); the archive mailbox can be saved in gz or bz2 compressed format as well.

Archmbox was successfully tested on the following platforms:
  • Linux
  • FreeBSD
  • NetBSD
  • OpenBSD
  • MacOS X
  • Sun Solaris
A little hack is needed for Sun Solaris; please read here or the INSTALL file included with the distribution for further details.


Archmbox is a perl based script with no additional module other than the standard ones provided with normal perl distributions.
It has been developed and tested on a Linux system with perl 5.6.1.
Archmbox also uses some standard shell binaries: fuser, rm, cat, cp, gzip. If fuser is not available on the system, lsof or fstat can be used as a replacement.
bzip2 is needed only if you want to use bzip compression with archive mailboxes.
An external converter is required to handle mbx mailboxes. At this time support for mbxcvt and mailutil is available. If you use a different convert and want it to be supported, feel free to write me.

Release notes

These are the changes in the latest release (4.10.0):
  • option to customize the archive mailbox name was added
  • support for logical and in regular expressions based archiving was added
  • code cleanups and other improvents were performed
A full development history can be found in the CHANGESLOG...


The latest release of archmbox is available from the SourceForge Files Section

These are the md5 sums for the available releases:
  • archmbox-4.10.0.tar.gz: 44f9f155d45d2eae4b9de33314adf841
  • archmbox-4.9.0.tar.gz: 15ef4fb0e83e10022264bebcd0138ff1
Available binaries:
  • FreeBSD : i386 FreeBSD port (maintained by Talal Al-Dik)
  • OpenDarwin : OpenDarwin port (maintained by Markus Weissmann)
  • Debian : Debian package (maintained by Alberto Furia)


I really wish archmbox to be a bug free piece of software. Unluckily wishes and reality often slightly differs...

You can find an updated list of bugs searching the bug tracker available at Sourceforge's.


Any kind of contribution to archmbox is really welcome.

If you wish to package archmbox for your favorite Linux distribution, or if you like to port it for a different architecture, feel free to do it. I'd simply like to receive a note to correctly update the information in this document and on the web site.
If you wish to contribute to development, ask for a feature which is not yet implemented or planned, submit a bug report or simply ask for help, you can take advantage of the available trackers for this project.

Patches and code contributions can be directly sent to myself.

Mailing lists

There are three active mailing lists for archmbox:
  • Announce : New releases and other important announcements
  • Users : General discussions
  • Devel : Developers community


Archmbox can be found at:


Copyright (C) 2001-2008 Alessandro Dotti Contra

For a full list of contributors please read the AUTHORS and THANKS files included with the package.

archmbox is distributed under the terms of the GPL

Latest News!
2008-11-04: archmbox 4.10.0 was released.
It's been more than three years from the last release of archmbox, and now here we are again. I'd like to than all contributors for their enthusiasm that pushed me to start working again on this piece of software. This release is not a milestone, and won't probably change the way you archive emails; by the way, there are some nice features that worth a try:
  • option to customize the archive mailbox name was added
  • support for logical and in regular expressions based archiving was added
The usual code cleanups and revisions were performed as well.
2005-04-16: Debian package available.
I'm happy to announce that the latest release of archmbox has been packaged for Debian and it's now included in the official unstable repository. Debian users can now apt-get archmbox to have it installed on their (unstable) Debian systems.
I'd like to thank Alberto Furia for maintaining the package.
2005-03-17: archmbox 4.9.0 was released.
This new release features an improved engine to generate list mode's reports. The output can be safely redirected to a log file or piped trough a pager without odd results.
Moreover, a regular expressions based filter was added; it lets some mailboxes/directories being filtered while archiving.
Some minor fixes and cleanups were performed as well.
2005-01-10: archmbox 4.8.0 was released.
This new release features the ability to use the "Date:" header to age a message, and thus perform archiving based on the informations of that header.
Small bug fixes code cleanups and output improvements were added as well.
2004-09-19: archmbox 4.7.0 was released.
This is a major features release; thanks to many contributions more options are now available to archmbox users.
It is now possible to trim archiving even more than before, skipping symbolic links and mailboxes smaller than a user specified dimension.
Output was improved, providing the user more meaningfull informations, and an overall summary of archiving if required.
Bug fixes and code cleanups were added as well.
2004-07-29: OpenDarwin port available.
I'm happy to announce that archmbox is now included in the OpenDarwin ports collection.
The port is maintained by Markus Weissmann.
I'd like to thank Markus for his job and for the nice surprise he did.
2004-05-16: archmbox 4.6.0 was released.
This is the first release which supports MacOS X and *BSD systems natively. It also supports Microsoft Windows, if CygWin is installed.
More option were added; it's now possible to keep unread or flagged messages, refine archiving using time beside date, use any header for a regexp based archiving.
A new mode is also available, copy mode. This allow you to copy messages from the source mailbox without actually modifying it.
Last but not least, many improvements have been done to mailbox parsing and handling, along with some bug fixes and code cleanups.
2004-05-12: FreeBSD port for archmbox.
I'm happy to announce that archmbox is now included in the FreeBSD ports collection.
The port is maintained by Talal Al-Dik.
I'd like to thank Talal for his job and for the nice surprise he did to me; I'd also like to thank FreeBSD users for their support and reports.
2004-03-14: archmbox 4.5.2 was released.
This release features more checks to prevent problems arising from insufficient disk space or from shell helpers' execution in general. This fixes bug 901359.
The option -t (tmpdir) was introduced to allow a better control over temporary working directory after archmbox was configured and installed.
2004-01-12: archmbox 4.5.1 was released.
This release fixes a weird bug which causes messages to be skipped during listing/archiving process (bug 872838). Thought annoying this bug was harmful. All earlier versions of archmbox are affected; an upgrade is strongly recommended.
2003-11-02: archmbox 4.5.0 was released.
This is the first release which supports mbx mailboxes; Option --format was added to specify which is the format of the mailboxes to parse. Moreover, from this release archmbox uses a configurable working directory and requires mailboxes to be specified using the full path.
2003-03-11: archmbox 4.4.2 was released.
This release fixes two minor bugs found in the previous releases of archmbox. Mailbox with names containing spaces are now handled correctly, and you won't be dropped to your shell anymore. The mtime of a mailbox is not changed if no message was archived.
2003-02-21: archmbox 4.4.1 was released.
This is a major bugfix release. A weird bug which caused mailboxes corruption was fixed.
2003-02-20: WARNING! Fatal bug in Archmbox 4.4.0.
I've discovered a really weird bug that causes archmbox 4.4.0 to corrupt mailboxes after processing. Message informations are still present and readable, but the headers are messy and the mail reader is no more able to display informations correctly. I'm investigating on the issue and I will release a new version of archmbox as soon as possible. All users are strongly suggested to downgrade to release 4.3.0; release 4.4.0 will be no longer available for download. Please, accept my apologies.
2003-02-15: archmbox 4.4.0 was released.
In this release support for status header in regular expression based archiving was added. Minor improvements to output were performed; total mailbox size and total saved space are printed along with all the usual informations. An harmless bug which causes archmbox to die if a mailbox is in use when multiple mailboxes are specified was also fixed.
2003-02-02: archmbox 4.3.0 was released.
In this release a new "kill" mode is available. When archmbox runs in kill mode, all selected messages are deleted from the original mailbox(es) rather than archived. From this release, a running mode must be specified, as archmbox doesn't consider "archive" mode as default if no mode option is specified on the command line. Minor improvements and bugfixes were made on code, mailboxes handling, documentation...

(C) 2002-2005 Alessandro Dotti Contra ( Logo Valid html 4.01 Valid CSS