SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

BotDetect - Real-Time Bot Detection API
 
 

MAN page from Old RedHat 5.X mh-6.8.4-6.i386.rpm

PICK

Section: User Commands (1)
Updated: MH.6.8
Index 

NAME

pick - select messages by content 

SYNOPSIS



     pick[+folder] [msgs][-and ...] [-or ...] [-not ...] [-lbrace ... -rbrace][--component pattern][-cc pattern][-date pattern][-from pattern][-search pattern][-subject pattern][-to pattern][-after date] [-before date] [-datefield field][-sequence name ...][-public] [-nopublic][-zero] [-nozero][-list] [-nolist][-help]


     typically:
scan `pick -from jones`
pick -to holloway -sequence select
show `pick -before friday` 

DESCRIPTION

Pick searches messages within a folder for the specifiedcontents, and then identifies those messages.Two types of search primitives are available:pattern matching and date constraint operations.

A modified grep(1) is used to perform the matching, so thefull regular expression (see ed(1)) facility is availablewithin `pattern'.With `-search', `pattern' is used directly,and with the others, the grep pattern constructed is:


     ``component[ \t]*:.*pattern''

This means that the pattern specified for a `-search' will befound everywhere in the message, including the header and the body,while the other pattern matching requests are limited to the singlespecified component.The expression


     `--component pattern'

is a shorthand for specifying


     `-search ``component[ \t]*:.*pattern'' '

It is used to pick a component which is not one of``To:'', ``cc:'', ``Date:'', ``From:'',or ``Subject:''.An example is `pick --reply-to pooh'.

Pattern matching is performed on a per-line basis.Within the header ofthe message, each component is treated as one long line, but inthe body, each line is separate.Lower-case letters in thesearch pattern will match either lower or upper case in themessage, while upper case will match only upper case.

Note that since the `-date' switch is a pattern matching operation (as described above),to find messages sent on a certain datethe pattern string must match the text of the``Date:'' field of the message.

Independent of any pattern matching operations requested,the switches `-after date' or `-before date' may also be usedto introduce date/time contraints on all of the messages.By default, the ``Date:'' field is consulted,but if another date yielding field(such as ``BB-Posted:'' or ``Delivery-Date:'') should be used,the `-datefield field' switch may be used.

With `-before' and `-after',pick will actually parse the date fields in each of the messagesspecified in `msgs'and compare them to the date/time specified.If `-after' is given,then only those messages whose ``Date:'' field valueis chronologically afterthe date specified will be considered.The `-before' switch specifies the complimentary action.

Both the `-after' and `-before' switches take legal 822-style datespecifications as arguments.Pick will default certain missing fields so that the entire dateneed not be specified.These fields are (in order of defaulting):timezone, time and timezone, date, date and timezone.All defaults are taken from the current date, time, and timezone.

In addition to 822-style dates,pick will also recognize any of the days of the week(``sunday'', ``monday'', and so on),and the special dates``today'', ``yesterday'' (24 hours ago),and ``tomorrow'' (24 hours from now).All days of the week are judged to refer to a day in the past(e.g., telling pick ``saturday'' ona ``tuesday'' means ``last saturday''not ``this saturday'').

Finally, in addition to these special specifications,pick will also honor a specification of the form ``-dd'',which means ``dd days ago''.

Pick supports complex boolean operations on the searching primitiveswith the `-and', `-or', `-not', and `-lbrace ... -rbrace' switches.For example,


     pick -after yesterday -and

          -lbrace -from freida -or -from fear -rbrace

identifies messages recently sent by ``frieda'' or ``fear''.

The matching primitives take precedence over the `-not' switch,which in turn takes precedence over `-and'which in turn takes precedence over `-or'.To override the default precedence,the `-lbrace' and `-rbrace' switches are provided,which act just like opening and closing parentheses in logical expressions.

If no search criteria are given, all the messagesspecified on the commandline are selected (this defaults to ``all'').

Once the search has been performed,if the `-list' switch is given,the message numbers of the selected messages are written to the standardoutput separated by newlines.This is extremely useful for quickly generating arguments for otherMH programs by using the ``backquoting'' syntax of the shell.For example,the command


     scan `pick +todo -after ``31 Mar 83 0123 PST''`

says to scan those messages in the indicated folder which meet theappropriate criterion.Note that since pick 's context changes are written out prior toscan 's invocation,you need not give the folder argument to scan as well.

Regardless of the operation of the `-list' switch,the `-sequence name' switch may be given once for each sequence the userwishes to define.For each sequence named,that sequence will be defined to mean exactly those messages selected bypick.For example,


     pick -from frated -seq fred

defines a new message sequence for the current folder called ``fred''which contains exactly those messages that were selected.

Note that whenever pick processes a `-sequence name' switch,it sets `-nolist'.

By default, pick will zero the sequence before adding it.This action can be disabled with the `-nozero' switch,which means that the messages selected by pick will be added to thesequence, if it already exists, and any messages already a part of thatsequence will remain so.

The `-public' and `-nopublic' switches are used by pick in the sameway mark uses them.^$HOME/.mh_profile~^The user profile^Path:~^To determine the user's MH directory^Current-Folder:~^To find the default current foldermark(1)`+folder' defaults to the current folder`msgs' defaults to all`-datefield date'`-nopublic' if the folder is read-only, `-public' otherwise`-zero'`-list' is the default if no `-sequence', `-nolist' otherwiseIf a folder is given, it will become the current folder.In previous versions of MH,the pick command would show, scan, or refile theselected messages.This was rather ``inverted logic'' from the UNIX point of view,so pick was changed to define sequences and output those sequences.Hence, pick can be used to generate the arguments for all otherMH commands,instead of giving pick endless switches for invoking those commandsitself.

Also, previous versions of pick balked if you didn't specify a searchstring or a date/time constraint.The current version does not, and merely matches the messages you specify.This lets you type something like:


     show `pick last:20 -seq fear`

instead of typing

mark -add -nozero -seq fear last:20show fear

Finally,timezones used to be ignored when comparing dates:they aren't any more.Use ``pick sequence -list''to enumerate the messages in a sequence (such as for use by a shell script).The argument to the `-after' and `-before' switches must be interpretedas a single token by the shell that invokes pick.Therefore,one must usually place the argument to this switch inside double-quotes.Furthermore,any occurance of `-datefield' must occur prior to the `-after'or `-before' switch it applies to.

If pick is used in a back-quoted operation,such as


     scan `pick -from jones`

and pick selects no messages(e.g., no messages are from ``jones''),then the shell will still run the outer command (e.g., ``scan'').Since no messages were matched,pick produced no output,and the argument given to the outer command as a result of backquotingpick is empty.In the case of MH programs,the outer command now acts as if the default `msg' or `msgs' should be used(e.g., ``all'' in the case of scan ).To prevent this unexpected behavior,if `-list' was given,and if its standard output is not a tty,then pick outputs the illegal message number ``0'' when it fails.This lets the outer command fail gracefully as well.

The pattern syntax ``[l-r]'' is not supported; each letterto be matched must be included within the square brackets.


 

Index

NAME
SYNOPSIS
DESCRIPTION

This document was created byman2html,using the manual pages.
 
ICM Bot detect detector