Bump to version 0.7.10 and import of changes that have been made between
2003 and 2006 and haven't been tracked by any SCM.
The changes are the following, in reverse order:
* src/mboxgrep.h, src/main.c, src/mbox.c, src/mbox.h, src/scan.c:
Temporary mbox file (used for deleting messages) is now created
by tmpmbox_create(); tmpp global pointer is killed; portions of
code in scan.c are replaced by single call of mbox_write_message();
scan.c no longer includes zlib.h and bzlib.h.
* src/mboxgrep.h, src/main.c, src/maildir.c, src/scan.c:
Got rid off tmpp and maildir_count global variables (code
cleanup).
* src/mboxgrep.h, src/main.c, src/scan.c:
Introduction of the global runtime_t structure; mailbox counter,
MD5 hash and other global variables are now part of it (code
cleanup).
* src/mboxgrep.h, src/re.c, src/re.h, src/scan.c:
Portions of scan_mailbox() have been moved to new functions,
pcre_match() and regex_match() (code cleanup).
* src/main.c, src/mboxgrep.h, src/re.c, src/re.h, src/scan.c:
main() has been partially uncluttered by moving portions of the
code to functions pcre_init() and regex_init().
* src/main.c, src/mboxgrep.h, src/misc.c, src/misc.h:
Variables regex_s and haveregex are now part of the option_t
structure (code cleanup).
* src/main.c, src/misc.c, src/misc.h:
Parts of main() have been moved to set_default_options() and
get_runtime_options() (code cleanup).
* src/mbox.c, src/mbox.h:
File mode and ownership-altering code has been moved to a separate
function, tmpfile_mod_own (code cleanup).
* src/mbox.c, src/mbox.h:
Portions of the code from tmpfile_open moved to a new function,
tmpfile_name (code cleanup).
* src/maildir.c, src/mh.c:
Removed some unused variables (have_return_path).
* src/mboxgrep.h, src/maildir.c, src/mh.c, src/mbox.c, src/scan.c, src/main.c:
boxname, outboxname, pipecmd and tmpfilename are now a part of
the config_t structure and no longer global variables.
* src/scan.c, src/misc.c, src/misc.h:
Created postmark_print() to unclutter scan_mailbox().
* src/misc.c, src/misc.h, src/mbox.c, src/maildir.c, src/mh.c:
Some repetitive code moved to malloc_message().
* src/mbox.c:
Cleanup of mbox_write_message(); use of gzwrite_loop() and
bzwrite_loop().
* src/scan.c, src/wrap.h, src/wrap.c:
Wrote gzwrite_loop() and bzwrite_loop() to remove some repetitive
code from scan.c.
* src/scan.c:
md5_check_message(): array b and cast in strncmp are no longer
unsigned.
* src/info.c, src/mboxgrep.h:
Updated copyright information, changed author's email address
to the one at Panix.
* src/mbox.h, src/mbox.c, src/scan.c, src/main.c:
mbox_write_message(); further fixes of message deletion code.
* src/scan.c:
Fixed deleting messages from mbox folders compressed with
bzip2.
* src/main.c, src/mbox.c:
Moved James P. Dugal's ownership-preserving code from main()
to tmpfile_open().
* src/info.c:
If bzip2 support is compiled in, `--help' command should list
`bz2mbox' as a valid option to `--mailbox-format='.
2018-10-04 20:07:27 +00:00
|
|
|
.Id $Id: mboxgrep.1,v 1.16 2006-01-18 00:09:58 dspiljar Exp $
|
2023-01-26 21:14:55 +00:00
|
|
|
.TH MBOXGREP 1 "26 Jan 2023"
|
2018-10-04 19:28:05 +00:00
|
|
|
.SH NAME
|
|
|
|
mboxgrep \- displays email messages matching a pattern
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.B mboxgrep
|
|
|
|
.RI [ OPTIONS ]
|
|
|
|
.RI PATTERN
|
|
|
|
.RI [ MAILBOX ]
|
|
|
|
.SH DESCRIPTION
|
|
|
|
This manual page refers to
|
|
|
|
.B mboxgrep
|
|
|
|
version
|
2023-01-26 21:14:55 +00:00
|
|
|
.BR 0.7.10 .
|
2018-10-04 19:28:05 +00:00
|
|
|
.PP
|
|
|
|
.B mboxgrep
|
|
|
|
scans a
|
|
|
|
.I MAILBOX
|
|
|
|
and displays messages matching
|
|
|
|
.I PATTERN.
|
|
|
|
.PP
|
|
|
|
If a mailbox name is ommited, or a single dash (-) is given instead,
|
|
|
|
it reads from standard input.
|
|
|
|
It can read mbox folders or output from another
|
|
|
|
.B mboxgrep
|
|
|
|
process from standard input.
|
|
|
|
.PP
|
|
|
|
.B mboxgrep
|
|
|
|
understands POSIX regular expressions, as well as Perl compatible regular
|
|
|
|
expressions (if enabled at compile time).
|
|
|
|
.I MAILBOX
|
|
|
|
can be either a:
|
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
mbox folder (either plain or compressed)
|
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
MH folder
|
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
Gnus nnmh or nnml folder
|
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
qmail-style maildir folder
|
|
|
|
.SH OPTIONS
|
|
|
|
.PP
|
|
|
|
.IP "-h, --help"
|
|
|
|
Display a help screen and exit.
|
|
|
|
.IP "-V, --version"
|
|
|
|
Display version and copyright information and exit.
|
|
|
|
.IP "-r, --recursive"
|
|
|
|
Descend into directories recursively.
|
|
|
|
.IP "-E, --extended-regexp"
|
|
|
|
PATTERN is an extended regular expression. This is default.
|
|
|
|
.IP "-G, --basic-regexp "
|
|
|
|
PATTERN is a basic regular expression.
|
|
|
|
.IP "-P, --perl-regexp"
|
|
|
|
PATTERN is a Perl regular expression. Works only if enabled at compile time.
|
|
|
|
.IP "-e, --regexp=PATTERN"
|
|
|
|
Use PATTERN as a regular expression.
|
|
|
|
.IP "-i, --ignore-case"
|
|
|
|
Ignore case distinctions.
|
|
|
|
.IP "-v, --invert-match"
|
|
|
|
Select messages which don't match PATTERN.
|
|
|
|
.IP "-H, --headers"
|
|
|
|
Match PATTERN against message headers.
|
|
|
|
.IP "-B, --body"
|
|
|
|
Match PATTERN against message body.
|
|
|
|
.IP "-l, --file-lock=METHOD"
|
|
|
|
Select file locking METHOD. METHOD is `fcntl', `flock', or `none'.
|
|
|
|
.IP "-nl, --no-file-lock"
|
|
|
|
Do not lock files. This option is meaningful only if a mbox folder (see below)
|
|
|
|
is scanned.
|
|
|
|
.IP "-c, --count"
|
|
|
|
Suppress normal output and print a count of matching messages.
|
|
|
|
.IP "-o, --output=FOLDER"
|
|
|
|
Suppress normal output and write messages to destination folder FOLDER instead.
|
|
|
|
.IP "-p, --pipe=COMMAND"
|
|
|
|
Pipe each found message to COMMAND
|
|
|
|
.IP "-d, --delete"
|
|
|
|
Suppress normal output and delete selected messages instead. Use with
|
|
|
|
caution.
|
|
|
|
.IP "-nd, --no-duplicates"
|
|
|
|
Ignore duplicate messages.
|
|
|
|
.IP "-m, --mailbox-format=TYPE"
|
|
|
|
Select input and output mailbox TYPE. TYPE can be either `mbox' (default),
|
2023-02-10 08:35:50 +00:00
|
|
|
`zmbox' (gzip compressed mbox), `bz2mbox' (bzip2 compressed mbox), `mh', `nnml',
|
|
|
|
`nnmh' or `maildir'.
|
2018-10-04 19:28:05 +00:00
|
|
|
.SH EXAMPLES
|
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
Search $MAIL for messages from Dirty Harry:
|
|
|
|
.PP
|
2023-02-10 08:35:50 +00:00
|
|
|
mboxgrep '^From:.*callahan@sanfranciscopolice\\.org' $MAIL
|
2018-10-04 19:28:05 +00:00
|
|
|
.TP
|
|
|
|
\(bu
|
|
|
|
Display all messages contained in folder ~/Mail/incoming, except those
|
|
|
|
that appear to originate from AOL:
|
|
|
|
.PP
|
|
|
|
mboxgrep -v 'Received:.*aol\\.com' ~/Mail/incoming
|
|
|
|
.SH BUGS
|
|
|
|
Report them to address below.
|
|
|
|
.SH SEE ALSO
|
|
|
|
grep(1),
|
|
|
|
regex(7),
|
|
|
|
perlre(1),
|
|
|
|
mbox(5),
|
|
|
|
RFC 2822
|
|
|
|
.SH DEDICATION
|
|
|
|
Mboxgrep is dedicated in loving memory of Vicky, my cat who died of
|
|
|
|
tumor on Sep 12, 2002.
|
|
|
|
.PP
|
|
|
|
You haven't been long with us, but you gave us a lot of joy and all your
|
|
|
|
big heart that stopped ticking too early. I will never forget you. Sleep
|
|
|
|
well, little friend.
|
|
|
|
.SH URL
|
|
|
|
http://www.mboxgrep.org/
|
|
|
|
.SH AUTHOR
|
2020-12-19 20:56:31 +00:00
|
|
|
Daniel Spiljar <dspiljar AT datatipp.se>
|