pick man page on BSDi

Man page or keyword search:  
man Server   6284 pages
apropos Keyword Search (all sections)
Output format
BSDi logo
[printable version]



PICK(1)							  PICK(1)

NAME
       pick - search for 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] [-version] [-help]

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

DESCRIPTION
       Pick searches within a folder for messages with the speci-
       fied contents, 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 the
       full  regular expression (see ed(1)) facility is available
       within  `pattern'.   With  `-search',  `pattern'	 is  used
       directly,  and  with  the  others,  the	grep pattern con-
       structed is:

	    "component[ \t]*:.*pattern"

       This means that the pattern specified for a `-search' will
       be  found  everywhere in the message, including the header
       and the body, while the other  pattern  matching	 requests
       are  limited  to	 the  single  specified	 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  of	the message, each component is treated as
       one long line, but in the body,	each  line  is	separate.
       Lower-case letters in the search pattern will match either
       lower or upper case in the message, while upper case  will
       match only upper case.

[nmh-1.0.4]		      MH.6.8				1

PICK(1)							  PICK(1)

       Note  that  since the `-date' switch is a pattern matching
       operation (as described above), to find messages sent on a
       certain date the 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
       used to introduce date/time constraints on all of the mes-
       sages.  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 messages specified in `msgs'
       and compare them to the date/time specified.  If	 `-after'
       is  given,  then	 only  those messages whose "Date:" field
       value is chronologically after the date specified will  be
       considered.  The `-before' switch specifies the complimen-
       tary action.

       Both  the  `-after'  and	 `-before'  switches  take  legal
       822-style  date	specifications	as  arguments.	Pick will
       default certain missing fields so  that	the  entire  date
       need  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" on a "tuesday" means "last satur-
       day" 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
       primitives   with   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

[nmh-1.0.4]		      MH.6.8				2

PICK(1)							  PICK(1)

       are provided, which act	just  like  opening  and  closing
       parentheses in logical expressions.

       If  no  search criteria are given, all the messages speci-
       fied on the command line 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	 standard  output  separated by newlines.
       This is extremely useful for quickly generating	arguments
       for  other  nmh 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  the  appropriate criterion.  Note that since pick 's
       context changes are written out prior to	 scan 's  invoca-
       tion,  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 user wishes to  define.   For  each	 sequence
       named, that sequence will be defined to mean exactly those
       messages selected by pick.  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 the sequence, if it already exists, and any  mes-
       sages already a part of that sequence will remain so.

       The `-public' and `-nopublic' switches are used by pick in
       the same way mark uses them.

FILES
       $HOME/.mh_profile		    The user profile

PROFILE COMPONENTS
       Path:		    To determine the user's nmh directory
       Current-Folder:	    To find the default current folder

[nmh-1.0.4]		      MH.6.8				3

PICK(1)							  PICK(1)

SEE ALSO
       mark(1)

DEFAULTS
       `+folder' defaults to the current folder
       `msgs' defaults to all
       `-datefield date'
       `-zero'
       `-list' is the default if no `-sequence', `-nolist' otherwise

CONTEXT
       If a folder is given, it will become the current folder.

HISTORY
       In previous versions of MH, the pick command  would  show,
       scan,  or  refile  the selected 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
       other MH commands, instead of giving pick endless switches
       for invoking those commands itself.

       Also, previous versions of pick balked if you didn't spec-
       ify  a  search string or a date/time constraint.	 The cur-
       rent 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:20
	    show fear

       Finally,	 timezones  used  to  be  ignored  when comparing
       dates: they aren't any more.

HELPFUL HINTS
       Use "pick sequence -list" to enumerate the messages  in	a
       sequence (such as for use by a shell script).

BUGS
       The  argument  to the `-after' and `-before' switches must
       be interpreted as a single token by the shell that invokes
       pick.   Therefore,  one must usually place the argument to
       this switch inside double-quotes.  Furthermore, any occur-
       rence  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

[nmh-1.0.4]		      MH.6.8				4

PICK(1)							  PICK(1)

       "jones"),  then the shell will still run the outer command
       (e.g., "scan").	Since no messages were matched, pick pro-
       duced  no output, and the argument given to the outer com-
       mand as a result of backquoting pick  is	 empty.	  In  the
       case of nmh 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 letter
       to be matched must be included within the square brackets.

[nmh-1.0.4]		      MH.6.8				5

[top]

List of man pages available for BSDi

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net