pick - select messages by content (only available within
the message handling system, mh)
pick [+folder] [msgs] [options]
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, 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 -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. 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 today, 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. Searches for the specified pattern
in the cc: field of messages. This option is caseinsensitive:
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 ("). 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. Specifies the header field to be used by
the -before and -after 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. Searches for the specified pattern in
the From: field of messages. This option is caseinsensitive:
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 ("). Prints a list of the valid
options to this command. 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 option. 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. 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 ("). 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 entirely of alphabetic or numeric characters;
no punctuation is allowed. 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 (").
Searches for the specified pattern in the To: 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 ("). 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.
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 caseinsensitive:
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 (").
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 periods 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-matching 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 logical expressions.
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 messages 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 +foldername 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 messages using
the message numbers.
You can search on the contents of the most common header
fields by giving 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 [Toc] [Back]
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 illegal character 0. This will cause the scan
command to fail gracefully.
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).
The sequence name, punctuation and message list must not
exceed 1024 characters. In practice, this gives a reasonable
limit of approximately 200 non-consecutive messages
in a sequence.
Path: To determine your Mail directory
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 sequence 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
The user profile.
csh(1), ed(1), grep(1), sh(1), inc(1), mark(1)
pick(1)
[ Back ] |