Manual Page Result
0
Command: pick | Section: 1 | Source: Digital UNIX | File: pick.1.gz
pick(1) General Commands Manual pick(1)
NAME
pick - select messages by content (only available within the message
handling system, mh)
SYNOPSIS
pick [ +folder ] [ msgs ] [ options ]
DESCRIPTION
The pick command lets you search messages in a folder on a diverse
range of search criteria.
You can search the mail headers or the text of some or all of the mes-
sages within a folder for the specified criteria. You can use pattern
matching or date constraint operations. You can use the messages that
you find with other MH commands, or you can place them in a sequence.
By default, pick searches all the messages in the current folder. You
can specify a folder other than the current folder using the +folder-
name option. Also, if you do not want to search all messages within
the folder, you can specify more than one message or a range of mes-
sages using the message numbers.
You can search on the contents of the most common header fields by giv-
ing the name of the field as an option, preceded by a dash (-). The
pick command allows you to specify the following header fields in this
way: To:, cc:, Date:, From:, and Subject:. You can also search the
contents of any other header field by preceding the name of the field
with two dashes.
The pick also allows you to introduce time constraints. You can search
for messages sent before, after, or between specified dates.
Combining pick with Other Commands
You can combine the output of pick directly with any MH command. by
using a technique called back-quoting. Enclose the pick command and
its associated arguments and options in back quotes (`). The system
performs back-quoted commands first. In the following example, the
pick command is performed first, and the output is then listed by the
scan command: % scan `pick -from jones`
3 16/01 jones Meeting 10.00 tomorrow<<There wi
17 22/01 jones Minutes of meeting 16/1<<Any com
21 01/02 jones Next week's meeting canceled<<T
If pick finds that there is no mail from Jones, it will output the il-
legal character 0. This will cause the scan command to fail grace-
fully.
You can use back-quoting to combine pick with any MH command. For more
information on back-quoting, see the reference page for your shell; for
example, csh(1) or sh(1).
FLAGS
-after date
Searches for messages sent after the specified date. This
command can be used with pattern-matching options, and also
in conjunction with the -before option to specify a date
range. The date must be enclosed in double quotes ("). This
option accepts RFC 822-style dates. It also accepts days of
the week, and the special dates today and yesterday. Days of
the week always refer to days in the past; for example, sat-
urday refers to last Saturday, not to next Saturday. If you
specify a day of the week or a special date, pick counts days
as 24-hour periods relative to the current day and time. For
example, if it is 9:30 A.M. on 11 July 1995 and you specify
-after yesterday, the pick command finds messages sent after
24 hours ago, or 9:30 A.M. on 10 July 1995.
By default, pick consults the Date: field of the message. If
you wish to use the date in another header field, you can
specify this with the -datefield option.
-before date
Searches for messages sent before the specified date. This
command can be used with pattern-matching options, and also
in conjunction with the -after option to specify a date
range. The date must be enclosed in double quotes ("). This
option accepts RFC 822-style dates.
It also accepts days of the week, and the special dates to-
day, tomorrow, and yesterday. Days of the week always refer
to days in the past; for example, saturday refers to last
Saturday, not to next Saturday. If you specify a day of the
week or a special date, pick counts days as 24-hour periods
relative to the current day and time. For example, if it is
9:30 A.M. on 11 July 1995 and you specify -before yesterday,
the pick command finds messages sent before 24 hours ago, or
9:30 A.M. on 10 July 1995.
By default, pick consults the Date: field of the message. If
you wish to use the date in another header field, you can
specify this with the -datefield option.
-cc pattern
Searches for the specified pattern in the cc: field of mes-
sages. This option is case-insensitive: lower- and upper-
case letters are treated as identical. So a search for the
pattern phillips would also find Phillips and PHILLIPS. If
the pattern contains spaces, you must enclose it in double
quotes (").
-date pattern
Searches for messages sent on a specified date. This option
consults the Date: field of messages. You must enclose the
date that you give in double quotes (") if it contains
spaces.
-datefield field
Specifies the header field to be used by the -before and -af-
ter options. By default, these options consult the Date:
field of the message header. You can specify a different
header field by naming it with this option. The -datefield
option must precede the -before or -after options it is used
with.
-from pattern
Searches for the specified pattern in the From: field of mes-
sages. This option is case-insensitive: lower- and upper-
case letters are treated as identical. So a search for the
pattern phillips would also find Phillips and PHILLIPS. If
the pattern contains spaces, you must enclose it in double
quotes (").
-help Prints a list of the valid options to this command.
-list
-nolist The -list option lists the numbers of the messages that have
met the search criteria. This is the usual default behavior
of pick. If you use the -nolist option, pick indicates how
many messages met the search criteria.
If you use the -sequence option to add the messages found to
a sequence, the default behavior is to use the -nolist op-
tion.
-public
-nopublic Sets the read permissions of sequences. Normally, when you
create a sequence with the -sequence option, the sequence
will not be accessible to other MH users. The -public option
makes the sequence accessible to other MH users. You can use
the -nopublic option to ensure that the sequence that you
create is only accessible to yourself.
-search pattern
Searches the entire message for the specified string. Each
line of the message is searched for the pattern that you
specify. The -search option is a modified grep(1). Like
grep, this option is case-sensitive; it treats upper- and
lower-case letters as different. So a search for the word
strawberries would not find a messages which contained the
word STRAWBERRIES. If the search pattern contains spaces,
you must enclose it in double quotes (").
-sequence name
Specifies a sequence in which pick places the messages found.
For more information on sequences, see mark(1). The name of
the sequence must begin with a letter, and must consist en-
tirely of alphabetic or numeric characters; no punctuation is
allowed.
-subject pattern
Searches for the specified pattern in the Subject: field of
messages. This option is case-insensitive: lower- and upper-
case letters are treated as identical. So a search for the
pattern phillips would also find Phillips and PHILLIPS. If
the pattern contains spaces, you must enclose it in double
quotes (").
-to pattern
Searches for the specified pattern in the To: field of mes-
sages. This option is case-insensitive: lower- and upper-
case letters are treated as identical. So a search for the
pattern phillips would also find Phillips and PHILLIPS. If
the pattern contains spaces, you must enclose it in double
quotes (").
-zero
-nozero Specifies whether to zero existing sequences before adding
new messages. Normally, pick removes all existing messages
from a sequence before adding messages to it. If you specify
the -nozero option, pick will add the messages it finds to
the existing contents of the sequence. This option only
works with the -sequence option.
--component pattern
Searches a specified header field. If you wish to search for
a pattern in a particular header field, you can specify the
field by placing two dashes (-) before the name of the field.
This option is case-insensitive: lower- and upper-case let-
ters are treated as identical. So a search for the pattern
phillips would also find Phillips and PHILLIPS. If the pat-
tern contains spaces, you must enclose it in double quotes
(").
The pick command recognizes the following common header
fields: To:, cc:, Date:, From:, and Subject:. You can search
these fields by preceding the name with one dash only.
In addition to the above options, you can direct pick to start its
search a specified number of days ago. To do this, precede the number
of days with a dash (-). The pick command counts days as 24-hour peri-
ods relative to the current day and time. For example, if it is 9:30
A.M. on 11 July 1995 and you specify -10, the following pick command
finds messages sent before 240 hours ago, or 9:30 A.M. on 30 June 1995:
% pick -subject strawberries -10 1 6
The pick command also supports complex boolean operations. The -not,
-or and -and options allow you to modify the behavior of pattern-match-
ing options. In the following command, the -not option means that pick
searches for messages that were not from fred: % pick -not -from fred
In the next example, the -or option finds all messages from fred or
from david. If the -or option is not used, pick searches for messages
with both the string fred and the string david in the From: field. %
pick -from fred -or -from david
The pattern-matching options normally take precedence over -not, which
in turn takes precedence over -and, which in turn takes precedence over
-or.
You can override the default precedence with the -lbrace and -rbrace
options. These act just like opening and closing parentheses in logi-
cal expressions.
RESTRICTIONS
The sequence name, punctuation and message list must not exceed 1024
characters. In practice, this gives a reasonable limit of approxi-
mately 200 non-consecutive messages in a sequence.
EXAMPLES
The first example finds all the mail in the current folder that was
sent by Christine: % pick -from christine 1 3 8
In the next example, pick searches messages 10-20 in the +sent folder
for messages that were sent to Kafka: % pick +sent 10-20 -to Kafka
pick: no messages match specification
The next example finds all messages from Jack, and places them in a se-
quence called testing: % pick -from Jack -sequence testing 3 hits
The next example finds all messages sent to Holloway since 10th June: %
pick -to holloway -after "10 Jun 1990" 19
PROFILE COMPONENTS
tab(+); l l. Path:+To determine your Mail directory
FILES
$HOME/.mh_profile
The user profile.
RELATED INFORMATION
csh(1), ed(1), grep(1), sh(1), inc(1), mark(1) delim off
pick(1)