|-c||Move current month mailbox back to original mailbox, implies -r (for use with -m, -M, -y, or -Y).|
|-h||Help, just print an informational message, and exit.|
|-H||Here, do work in the current directory instead of in ./SM_WORK.|
|-m||Sort to monthly mailboxes of type mbox.YYMM.|
|-M||Sort to monthly mailboxes of type YYMM/mbox.|
|-y||Sort to yearly mailboxes of type mbox.YYYY.|
|-Y||Sort to yearly mailboxes of type YYYY/mbox. With -m, sort to mailboxes of type YYYY/mbox.MM. With -M, sort to mailboxes of type YYYY/MM/mbox.|
|-r||Remove (replace) the original mailbox after sorting.|
|-R||Recurse, redo any appended mailboxes (for use with -m, -M, -y, or -Y).|
|-v||Verbose, even more messages.|
|-x||Dont make any backup copies in ./SM_BACKUP.|
The following operands are supported:
mbox The name (with optional path) of a standard Internet style mailbox file.
sortmail can help to organize saved email for archival and retrieval purposes. Messages are sorted by date/time, then reassembled into new mailboxes. A notable feature is the ability to separate the messages into monthly or yearly mailboxes.
The default behavior is to take each mbox (mailbox) argument, make a backup copy, make a working copy, decompose it into individual message files, and then recompose the messages ordered by date in increasing order.
With the -m flag, the messages are reassembled into separate files per month, mbox.YYMM; for example, mlist.9801. With the -M flag, the messages are reassembled into separate files per month in subdirectories, YYMM/mbox; for example, 9801/mlist. With the -y flag, the messages are reassembled into separate files per year, mbox.YYYY; for example, mlist.1998. With the -Y flag, the messages are reassembled into separate files per year in subdirectories, YYYY/mbox; for example, 1998/mlist. If -Y is combined with -m, the messages are reassembled into separate files per month in yearly subdirectories, YYYY/mbox.MM; for example, 1998/mlist.01. If -Y is combined with -M, the messages are reassembled into separate files per month in yearly and monthly subdirectories, YYYY/MM/mbox; for example, 1998/01/mlist. In any of these cases, any such pre-existing mailboxes will be appended. If any such pre-existing mailboxes are compressed (.Z or .gz), they will first be uncompressed, and then recompressed after being modified.
With the -c flag (along with -m, -M, -y, or -Y), the mbox file for the current month (if any) will be renamed as the original mbox.
With the -R flag (along with -m, -M, -y, or -Y), when a month file is combined with one that already exists, the resulting file will be resorted.
With the -H flag, all work is done in the current directory instead of in ./SM_WORK. This reduces the usefulness of some of the other options, and is a bit riskier. (Also known as the gonzo option.)
By default, all work is done in a subdirectory ./SM_WORK, and all files to be modified are backed up in a subdirectory ./SM_BACKUP. These subdirectories are created if they dont already exist. These are not cleaned up after sorting, though none of the temporary message files or sort files should remain.
Sort the messages in the mailbox mail/CERT, not making a backup copy in ./SM_BACKUP, and rename the new sorted mailbox to the original mailbox. Without -r, the new mailbox would remain in ./SM_WORK:
sortmail -xr mail/CERT
Sort the messages in the mailbox FreeBSD, separating messages by month into mailboxes like FreeBSD.9801, FreeBSD.9802, etc. The original mailbox will be overwitten with any messages for the current month:
sortmail -mc FreeBSD
Sort the messages in the mailboxes maya and jim, separating messages by month into mailboxes in subdirectories like 9801/maya, 9801/jim, 9802/maya, 9802/jim, etc. Any such pre-existing mailboxes that are appended will also be resorted:
sortmail -MR maya jim
Sort the messages in the mailbox yada, separating messages by month into mailboxes in subdirectories like 1998/01/yada, 1998/02/yada, etc. Any such pre-existing mailboxes that are appended will also be resorted, and the original mailbox will be overwitten with any messages for the current month:
sortmail -YMcR yada
./SM_BACKUP Directory where sortmail makes a backup copy of each mailbox before sorting it. ./SM_WORK Directory where sortmail does its work: makes a temporary copy of each mbox, and a serialized file for each message. mbox.YYYYMMDD.hhmmss.nnnnn Temporary serialized files for each individual message in a mailbox, where mbox is the name of the mailbox, YYYYMMDD is the year, month, and day, hhmmss is the hour, minute, and second, and nnnnn is a serialization number. These will be created in the ./SM_WORK directory, unless the -H flag is specified.
Returns 0 if no problems encountered.
Returns non-zero for any errors encountered.
sortmail is a shell script that uses the filesystem for sorting. It is slow.
Due to copies made during the sorting process, you should have enough additional space in your current partition and/or quota to hold three full copies of each original mbox.
sortmail is quite verbose, even without the -v option. A quiet option should be added.
Data at the beginning of a mailbox that does not appear to be part of an email message will be silently discarded.
sortmail creates working directories and backup copies of mailboxes, and does not clean up after itself (except as noted above).
compress(1), decomposemail(1), gzip(1), recomposemail(1), sh(1);
mailsort (Perl script, available from CPAN sites);
Toolman: Sorting and Archiving Email, ;login: magazine (USENIX Association), August 1998;
sortmail was written by Daniel E. Singer (a.k.a. Toolman) at the Department of Computer Science, Duke University.
|Toolman||SORTMAIL (1)||12 September 1998|