X-Git-Url: https://www.fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=mymail.git;a=blobdiff_plain;f=mymail.1;h=b79b4b917830c4329817c067fe98d8fd6c217dbd;hp=f2ba3f513ece8a5f03fac908691953c270746b23;hb=248736d0d3900bce18c1c6afd9f3dc2d93df2cae;hpb=e0b1323602f5c99f3da6d4d20396b73ddb59d81f diff --git a/mymail.1 b/mymail.1 index f2ba3f5..b79b4b9 100644 --- a/mymail.1 +++ b/mymail.1 @@ -1,4 +1,4 @@ -.TH "MYMAIL" "0.9" "February 2013" "Francois Fleuret" "User Commands" +.TH "MYMAIL" "0.9.2" "February 2013" "Francois Fleuret" "User Commands" \" This man page was written by Francois Fleuret \" and is distributed under a Creative Commons Attribution-Share Alike @@ -6,44 +6,149 @@ .SH "NAME" -mymail \- A simple command line utility for dynamic pattern selection +mymail \- A simple command line utility for indexing and searching mbox files .SH "SYNOPSIS" -\fBmymail\fP [\fIoptions\fR] [\fI\fR [\fI\fR ...]] +\fBmymail\fP [\fIoptions\fR] [\fI\fR [\fI\fR ... ]|\fI\fR [\fI\fR ... ]] .SH "DESCRIPTION" -\fBmymail\fP is a command line utility for to index mbox files and -perform quick searches based on sender, subject, etc. - -It is similar in spirit to other existing software such as mu or -notmuch. +\fBmymail\fP is a command line utility to index mbox files, search for +mails based on sender, subject, etc. and generate result mbox files. + +It is similar in spirit to other tools such as mu or notmuch, but is +overall simpler. + +.SH "OPTIONS" +.TP +\fB-h\fR, \fB--help\fR +display help and exit +.TP +\fB-v\fR, \fB--version\fR +print the version number +.TP +\fB-q\fR, \fB--quiet\fR +do not write information during the search +.TP +\fB-p \fR, \fB--db-pattern \fR +set the db filename pattern for recursive search +.TP +\fB-r \fR, \fB--db-root \fR +set the db root path for recursive search +.TP +\fB-l \fR, \fB--db-list \fR +set the semicolon-separated list of db files for search +.TP +\fB-s \fR, \fB--search \fR search for +matching mails in the db file. Multiple search requests can be +combined, and only mails fulfilling all of them will be extracted. +.TP +\fB-d \fR, \fB--db-file \fR +set the db filename for indexing +.TP +\fB-i\fR, \fB--index\fR +index mails in the mailboxes located recursively anywhere in the +directories following the options on the command lines +.TP +\fB-o \fR, \fB--output \fR set the +result mbox filename. If it is not set, the standard output is used +.TP +\fB-a \fR, \fB--default-search \fR +set the default search field. If a search request is not understood, +it is interpreted as the regexp with this default search field + +.SH "ENVIRONMENT VARIABLES" + +.TP +\fBMYMAIL_DB_PATTERN\fR +defaut value for the --db-pattern argument +.TP +\fBMYMAIL_DB_ROOT\fR +defaut value for the --db-root argument +.TP +\fBMYMAIL_DB_LIST\fR +defaut value for the --db-list argument +.TP +\fBMYMAIL_DB_FILE\fR +defaut value for the --db-file argument + +.SH "SEARCH SYNTAX" + +The search conditions take the form of a single letter followed by a +space and a regexp, which can itself contain spaces. If the condition +is prefaced by the character "!" it is negated, and has to be false +for a mail to be selected. + +.TP +\fBf \fR (from) +selects mails whose leading line From, or fields From:, Sender:, +Reply-To:, or Return-Path: matches the regexp. +.TP +\fBt \fR (to) +selects mails whose field To:, Cc:, or Bcc: matches the regexp. +.TP +\fBp \fR (participant) +selects mails that would be selected by \fBf\fR or \fBt\fR. +.TP +\fBs \fR (subject) +selects mails whose field Subject: matches the regexp. +.TP +\fBd \fR (date) +selects mails whose field Date: matches the regexp. +.TP +\fBb \fR (body) +selects mails whose body matches the regexp. Evaluating such a +condition requires to read the original mboxes completely, which can +be slow. However, header conditions are checked first to read the +bodies only for mails which fulfill them entirely. +.TP +\fB8h\fR, \fBtoday\fR, \fB24h\fR, \fBweek\fR, \fBmonth\fR, and +\fByear\fR +selects mails received during the last 8, 24, 24, 7 * 24 hours, 31 * +24 hours, and 365 * 24 hours respectively. +.TP +\fByesterday\fR +selects mails received between 48h and 24h ago. +.TP +\fBmonday\fR, \fBtuesday\fR, ..., \fBsunday\fR +selects mails received the most recent such day of the week .SH "EXAMPLES" -To index all the mbox present in the directory ~/my_mboxes and create -a db file /tmp/mymail.db +The command + +.nf +.B mymail --db-file /tmp/mymail/2010-2011/mymail.db \e +.B --index \e +.B ~/archives/mails/2010 ~/archives/mails/2011 -.RS -.EX -mymail --index --db-file /tmp/mymail.db /tmp/my_mboxes -.EE -.RE +will index all the mbox files present in the directories +~/archives/mails/2010 and ~/archives/mails/2011 (recursively) and +create an index file /tmp/mymail/2010-2011/mymail.db -To search in /tmp/mymail_2010.db and /tmp/mymail_2011.db for all mails -having bob.something as sender or recipient, without "spam" in the -subject +And -.RS -.EX -mymail --search "p bob.something,!s spam" /tmp/mymail_2010.db /tmp/mymail_2011.db -.EE -.RE +.nf +.B mymail --db-pattern '\.db$' --db-root /tmp/mymail \e +.B --output /tmp/mymail.mbox \e +.B --search 'p bob.something' \e +.B --search '!s spam' \e +.B --search 'month' + +will search in all the database files *.db located (recursively) in +/tmp/mymail, for all the mails having "bob.something" as sender or +recipient, without "spam" in the subject, received over the last 31 +days, and create an mbox file /tmp/mymail/mbox. .SH "BUGS" -None known, probably many. +The search in the mail bodies does not decode mimencoding mails, hence +will not catch patterns in encoded text. + +The mbox format is not clear for multipart messages, since the ^"From +" lines are not always quoted properly (at least the ones I have to +test). .SH "AUTHOR"