table of contents
MPICK(1) | General Commands Manual | MPICK(1) |
NAME¶
mpick
—
advanced message filter
SYNOPSIS¶
mpick |
[-T ] [-v ]
[-t test]
[msglist ...] |
DESCRIPTION¶
mpick
prints all matching messages.
If used interactively, mpick
will default
to the current sequence. Otherwise, mpick
will read
filenames from the standard input.
The options are as follows:
MSGLISTS¶
mpick
message lists (msglist) are mostly compatible with
mailx(1). They are message specifications used as shortened
TESTS, and can include:
TESTS¶
mpick
tests are given by the following EBNF:
<expr> ::= <expr> || <expr> -- disjunction | <expr> && <expr> -- conjunction | ! <expr> -- negation | ( <expr> ) | <flagprop> | <timeprop> <numop> <dur> | <numprop> <numop> <num> | <strprop> <strop> <str> | prune -- do not match further messages in thread | print -- always true value <flagprop> ::= child | draft | flagged | info | new | parent | passed | replied | seen | selected | trashed <timeprop> ::= atime | ctime | mtime | date <numprop> ::= depth | kept | replies | index | size | total <numop> ::= <= | < | >= | > | == | = | != <dur> ::= "./path" -- mtime of relative path | "/path" -- mtime of absolute path | "YYYY-MM-DD HH:MM:SS" | "YYYY-MM-DD" -- at midnight | "HH:MM:SS" -- today | "HH:MM" -- today | "-[0-9]+d" -- n days ago at midnight | "-[0-9]+h" -- n hours before now | "-[0-9]+m" -- n minutes before now | "-[0-9]+s" -- n seconds before now | [0-9]+ -- absolute epoch time <num> ::= [0-9]+ ( c -- *1 | b -- *512 | k -- *1024 | M -- *1024*1024 | G -- *1024*1024*1024 | T )? -- *1024*1024*1024*1024 | cur -- index of cur message <strprop> ::= from | subject | to | <str> -- header name <strop> ::= == | = | != -- string (in)equality | === | !=== -- case insensitive string (in)equality | ~~ | !~~ -- glob (fnmatch) | ~~~ | !~~~ -- case insensitive glob (fnmatch) | =~ | !=~ | !~ -- POSIX Extended Regular Expressions | =~~ | !=~~ -- case insensitive POSIX Extended Regular Expressions <str> ::= " ([^"] | "")+ " -- use "" for a single " inside " | $[A-Za-z0-9_]+ -- environment variable
EXIT STATUS¶
Thempick
utility exits 0 on success,
and >0 if an error occurs.
EXAMPLES¶
You can pick mails to move them into anothermaildir
.
mv $(mlist ./INBOX | mpick -t 'from
=~ "@github"') ./github/cur
Or you can use mpick
to pick mails from
the current sequence.
mpick -t 'subject =~~
"mblaze"' | mscan
A more advanced mpick
expression to pick
mails in a certain time span, which are flagged as replied or not seen.
mpick -t 'date >= "2016-01-01" && date < "2017-01-01" && (replied || !seen)'
And to find other mblaze users.
mpick -t '"User-Agent" =~~
"mblaze"' | mscan
SEE ALSO¶
lr(1), mailx(1)AUTHORS¶
Leah Neukirchen <leah@vuxu.org>Duncan Overbruck <mail@duncano.de>
LICENSE¶
mpick
is in the public domain.
To the extent possible under law, the creator of this work has waived all copyright and related or neighboring rights to this work.
July 27, 2016 | Linux 4.19.0-10-amd64 |