e4034fe298
*) Sync with 4.4BSD-Lite2 *) Set usecs for utimes() *) Add 'inc' command and 'autoinc' option that check for new mail manually and automatically, respectively *) Use POSIX signal handling and tty semantics *) Handle long lines correctly when paging messages *) Add ability to explicitly search 'To:' line *) Various manpage cleanups *) Support overriding '~/.mailrc' with $MAILRC *) Support 'askbcc' and 'asksub' options *) Fix various bugs Reviewed by: ru (mail.1) Obtained from: NetBSD
1140 lines
27 KiB
Groff
1140 lines
27 KiB
Groff
.\" Copyright (c) 1980, 1990, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" @(#)mail.1 8.8 (Berkeley) 4/28/95
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd April 28, 1995
|
|
.Dt MAIL 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm mail ,
|
|
.Nm Mail
|
|
.Nd send and receive mail
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl EiInv
|
|
.Op Fl s Ar subject
|
|
.Op Fl c Ar cc-addr
|
|
.Op Fl b Ar bcc-addr
|
|
.Ar to-addr ...
|
|
.Oo
|
|
.Fl
|
|
.Ar sendmail-option ...
|
|
.Oc
|
|
.Nm
|
|
.Op Fl EiInNv
|
|
.Fl f
|
|
.Op Ar name
|
|
.Nm
|
|
.Op Fl EiInNv
|
|
.Op Fl u Ar user
|
|
.Sh INTRODUCTION
|
|
.Nm Mail
|
|
is an intelligent mail processing system, which has
|
|
a command syntax reminiscent of
|
|
.Xr \&ed 1
|
|
with lines replaced by messages.
|
|
.Pp
|
|
.Bl -tag -width flag
|
|
.It Fl v
|
|
Verbose mode.
|
|
The details of
|
|
delivery are displayed on the user's terminal.
|
|
.It Fl E
|
|
Do not send messages with an empty body.
|
|
This is useful for piping errors from
|
|
.Xr cron 8
|
|
scripts.
|
|
.It Fl i
|
|
Ignore tty interrupt signals.
|
|
This is
|
|
particularly useful when using
|
|
.Nm
|
|
on noisy phone lines.
|
|
.It Fl I
|
|
Forces mail to run in interactive mode even when
|
|
input is not a terminal.
|
|
In particular, the
|
|
.Sq Ic \&~
|
|
special
|
|
character when sending mail is only active in interactive mode.
|
|
.It Fl n
|
|
Inhibits reading the system-wide
|
|
.Pa mail.rc
|
|
files upon startup.
|
|
.It Fl N
|
|
Inhibits the initial display of message headers
|
|
when reading mail or editing a mail folder.
|
|
.It Fl s
|
|
Specify subject on command line
|
|
(only the first argument after the
|
|
.Fl s
|
|
flag is used as a subject; be careful to quote subjects
|
|
containing spaces.)
|
|
.It Fl c
|
|
Send carbon copies to
|
|
.Ar list
|
|
of users.
|
|
.It Fl b
|
|
Send blind carbon copies to
|
|
.Ar list .
|
|
List should be a comma-separated list of names.
|
|
.It Fl f
|
|
Read in the contents of your
|
|
.Ar mbox
|
|
(or the specified file)
|
|
for processing; when you
|
|
.Ar quit ,
|
|
.Nm
|
|
writes undeleted messages back to this file.
|
|
.It Fl u
|
|
Is equivalent to:
|
|
.Pp
|
|
.Dl mail -f /var/mail/user
|
|
.El
|
|
.Ss Startup actions
|
|
At startup time
|
|
.Nm
|
|
will execute commands in the system command files
|
|
.Pa /usr/share/misc/mail.rc ,
|
|
.Pa /usr/local/etc/mail.rc
|
|
and
|
|
.Pa /etc/mail.rc
|
|
in order, unless explicitly told not to by the use of the
|
|
.Fl n
|
|
option.
|
|
Next, the commands in the user's personal command file
|
|
.Pa ~/.mailrc
|
|
are executed.
|
|
.Nm
|
|
then examines its command line options to determine whether a
|
|
new message is to be sent, or whether an existing mailbox is to
|
|
be read.
|
|
.Ss Sending mail
|
|
To send a message to one or more people,
|
|
.Nm
|
|
can be invoked with arguments which are the names of people to
|
|
whom the mail will be sent.
|
|
You are then expected to type in
|
|
your message, followed
|
|
by a
|
|
.Sq Li control\-D
|
|
at the beginning of a line.
|
|
The section below
|
|
.Ar Replying to or originating mail ,
|
|
describes some features of
|
|
.Nm
|
|
available to help you compose your letter.
|
|
.Pp
|
|
.Ss Reading mail
|
|
In normal usage
|
|
.Nm
|
|
is given no arguments and checks your mail out of the
|
|
post office, then
|
|
prints out a one line header of each message found.
|
|
The current message is initially the first message (numbered 1)
|
|
and can be printed using the
|
|
.Ic print
|
|
command (which can be abbreviated
|
|
.Ql Ic p ) .
|
|
You can move among the messages much as you move between lines in
|
|
.Xr \&ed 1 ,
|
|
with the commands
|
|
.Ql Ic \&+
|
|
and
|
|
.Ql Ic \&\-
|
|
moving backwards and forwards, and
|
|
simple numbers.
|
|
.Pp
|
|
.Ss Disposing of mail
|
|
After examining a message you can
|
|
.Ic delete
|
|
.Pq Ic d
|
|
the message or
|
|
.Ic reply
|
|
.Pq Ic r
|
|
to it.
|
|
Deletion causes the
|
|
.Nm
|
|
program to forget about the message.
|
|
This is not irreversible; the message can be
|
|
.Ic undeleted
|
|
.Pq Ic u
|
|
by giving its number, or the
|
|
.Nm
|
|
session can be aborted by giving the
|
|
.Ic exit
|
|
.Pq Ic x
|
|
command.
|
|
Deleted messages will, however, usually disappear never to be seen again.
|
|
.Pp
|
|
.Ss Specifying messages
|
|
Commands such as
|
|
.Ic print
|
|
and
|
|
.Ic delete
|
|
can be given a list of message numbers as arguments to apply
|
|
to a number of messages at once.
|
|
Thus
|
|
.Dq Li delete 1 2
|
|
deletes messages 1 and 2, while
|
|
.Dq Li delete 1\-5
|
|
deletes messages 1 through 5.
|
|
The special name
|
|
.Ql Li \&*
|
|
addresses all messages, and
|
|
.Ql Li \&$
|
|
addresses
|
|
the last message; thus the command
|
|
.Ic top
|
|
which prints the first few lines of a message could be used in
|
|
.Dq Li top \&*
|
|
to print the first few lines of all messages.
|
|
.Pp
|
|
.Ss Replying to or originating mail
|
|
You can use the
|
|
.Ic reply
|
|
command to
|
|
set up a response to a message, sending it back to the
|
|
person who it was from.
|
|
Text you then type in, up to an end-of-file,
|
|
defines the contents of the message.
|
|
While you are composing a message,
|
|
.Nm
|
|
treats lines beginning with the character
|
|
.Ql Ic \&~
|
|
specially.
|
|
For instance, typing
|
|
.Ql Ic \&~m
|
|
(alone on a line) will place a copy
|
|
of the current message into the response right shifting it by a tabstop
|
|
(see
|
|
.Em indentprefix
|
|
variable, below).
|
|
Other escapes will set up subject fields, add and delete recipients
|
|
to the message and allow you to escape to an editor to revise the
|
|
message or to a shell to run some commands.
|
|
(These options
|
|
are given in the summary below.)
|
|
.Pp
|
|
.Ss Ending a mail processing session
|
|
You can end a
|
|
.Nm
|
|
session with the
|
|
.Ic quit
|
|
.Pq Ic q
|
|
command.
|
|
Messages which have been examined go to your
|
|
.Ar mbox
|
|
file unless they have been deleted in which case they are discarded.
|
|
Unexamined messages go back to the post office.
|
|
(See the
|
|
.Fl f
|
|
option above).
|
|
.Pp
|
|
.Ss Personal and system wide distribution lists
|
|
It is also possible to create a personal distribution lists so that,
|
|
for instance, you can send mail to
|
|
.Dq Li cohorts
|
|
and have it go
|
|
to a group of people.
|
|
Such lists can be defined by placing a line like
|
|
.Pp
|
|
.Dl alias cohorts bill ozalp jkf mark kridle@ucbcory
|
|
.Pp
|
|
in the file
|
|
.Pa \&.mailrc
|
|
in your home directory.
|
|
The current list of such aliases can be displayed with the
|
|
.Ic alias
|
|
command in
|
|
.Nm .
|
|
System wide distribution lists can be created by editing
|
|
.Pa /etc/mail/aliases ,
|
|
see
|
|
.Xr aliases 5
|
|
and
|
|
.Xr sendmail 8 ;
|
|
these are kept in a different syntax.
|
|
In mail you send, personal aliases will be expanded in mail sent
|
|
to others so that they will be able to
|
|
.Ic reply
|
|
to the recipients.
|
|
System wide
|
|
.Ic aliases
|
|
are not expanded when the mail is sent,
|
|
but any reply returned to the machine will have the system wide
|
|
alias expanded as all mail goes through
|
|
.Xr sendmail 8 .
|
|
.Pp
|
|
.Ss Network mail (ARPA, UUCP, Berknet)
|
|
See
|
|
.Xr mailaddr 7
|
|
for a description of network addresses.
|
|
.Pp
|
|
.Nm Mail
|
|
has a number of options which can be set in the
|
|
.Pa .mailrc
|
|
file to alter its behavior; thus
|
|
.Dq Li set askcc
|
|
enables the
|
|
.Ar askcc
|
|
feature.
|
|
(These options are summarized below.)
|
|
.Sh SUMMARY
|
|
(Adapted from the `Mail Reference Manual')
|
|
.Pp
|
|
Each command is typed on a line by itself, and may take arguments
|
|
following the command word.
|
|
The command need not be typed in its
|
|
entirety \- the first command which matches the typed prefix is used.
|
|
For commands which take message lists as arguments, if no message
|
|
list is given, then the next message forward which satisfies the
|
|
command's requirements is used.
|
|
If there are no messages forward of
|
|
the current message, the search proceeds backwards, and if there are no
|
|
good messages at all,
|
|
.Nm
|
|
types
|
|
.Dq Li \&No applicable messages
|
|
and
|
|
aborts the command.
|
|
.Bl -tag -width delete
|
|
.It Ic \&\-
|
|
Print out the preceding message.
|
|
If given a numeric
|
|
argument
|
|
.Ar n ,
|
|
goes to the
|
|
.Ar n Ns 'th
|
|
previous message and prints it.
|
|
.It Ic \&#
|
|
ignore the remainder of the line as a comment.
|
|
.It Ic \&?
|
|
Prints a brief summary of commands.
|
|
.It Ic \&!
|
|
Executes the shell
|
|
(see
|
|
.Xr sh 1
|
|
and
|
|
.Xr csh 1 )
|
|
command which follows.
|
|
.It Ic Print
|
|
.Pq Ic P
|
|
Like
|
|
.Ic print
|
|
but also prints out ignored header fields.
|
|
See also
|
|
.Ic print ,
|
|
.Ic ignore
|
|
and
|
|
.Ic retain .
|
|
.It Ic Reply
|
|
.Pq Ic R
|
|
Reply to originator.
|
|
Does not reply to other
|
|
recipients of the original message.
|
|
.It Ic Type
|
|
.Pq Ic T
|
|
Identical to the
|
|
.Ic Print
|
|
command.
|
|
.It Ic alias
|
|
.Pq Ic a
|
|
With no arguments, prints out all currently-defined aliases.
|
|
With one
|
|
argument, prints out that alias.
|
|
With more than one argument, creates
|
|
a new alias or changes an old one.
|
|
.It Ic alternates
|
|
.Pq Ic alt
|
|
The
|
|
.Ic alternates
|
|
command is useful if you have accounts on several machines.
|
|
It can be used to inform
|
|
.Nm
|
|
that the listed addresses are really you.
|
|
When you
|
|
.Ic reply
|
|
to messages,
|
|
.Nm
|
|
will not send a copy of the message to any of the addresses
|
|
listed on the
|
|
.Ic alternates
|
|
list.
|
|
If the
|
|
.Ic alternates
|
|
command is given with no argument, the current set of alternative
|
|
names is displayed.
|
|
.It Ic chdir
|
|
.Pq Ic c
|
|
Changes the user's working directory to that specified, if given.
|
|
If
|
|
no directory is given, then changes to the user's login directory.
|
|
.It Ic copy
|
|
.Pq Ic co
|
|
The
|
|
.Ic copy
|
|
command does the same thing that
|
|
.Ic save
|
|
does, except that it does not mark the messages it
|
|
is used on for deletion when you quit.
|
|
.It Ic delete
|
|
.Pq Ic d
|
|
Takes a list of messages as argument and marks them all as deleted.
|
|
Deleted messages will not be saved in
|
|
.Ar mbox ,
|
|
nor will they be available for most other commands.
|
|
.It Ic dp
|
|
(also
|
|
.Ic dt )
|
|
Deletes the current message and prints the next message.
|
|
If there is no next message,
|
|
.Nm
|
|
says
|
|
.Dq Li "at EOF" .
|
|
.It Ic edit
|
|
.Pq Ic e
|
|
Takes a list of messages and points the text editor at each one in
|
|
turn.
|
|
On return from the editor, the message is read back in.
|
|
.It Ic exit
|
|
.Ic ( ex
|
|
or
|
|
.Ic x )
|
|
Effects an immediate return to the Shell without
|
|
modifying the user's system mailbox, his
|
|
.Ar mbox
|
|
file, or his edit file in
|
|
.Fl f .
|
|
.It Ic file
|
|
.Pq Ic fi
|
|
The same as
|
|
.Ic folder .
|
|
.It Ic folders
|
|
List the names of the folders in your folder directory.
|
|
.It Ic folder
|
|
.Pq Ic fo
|
|
The
|
|
.Ic folder
|
|
command switches to a new mail file or folder.
|
|
With no
|
|
arguments, it tells you which file you are currently reading.
|
|
If you give it an argument, it will write out changes (such
|
|
as deletions) you have made in the current file and read in
|
|
the new file.
|
|
Some special conventions are recognized for
|
|
the name.
|
|
# means the previous file, % means your system
|
|
mailbox, %user means user's system mailbox, & means
|
|
your
|
|
.Ar mbox
|
|
file, and
|
|
\&+\&folder means a file in your folder
|
|
directory.
|
|
.It Ic from
|
|
.Pq Ic f
|
|
Takes a list of messages and prints their message headers.
|
|
.It Ic headers
|
|
.Pq Ic h
|
|
Lists the current range of headers, which is an 18\-message group.
|
|
If
|
|
a
|
|
.Ql \&+
|
|
argument is given, then the next 18\-message group is printed, and if
|
|
a
|
|
.Ql \&\-
|
|
argument is given, the previous 18\-message group is printed.
|
|
.It Ic help
|
|
A synonym for
|
|
.Ic \&?
|
|
.It Ic hold
|
|
.Ic ( ho ,
|
|
also
|
|
.Ic preserve )
|
|
Takes a message list and marks each
|
|
message therein to be saved in the
|
|
user's system mailbox instead of in
|
|
.Ar mbox .
|
|
Does not override the
|
|
.Ic delete
|
|
command.
|
|
.It Ic ignore
|
|
Add the list of header fields named to the
|
|
.Ar ignored list .
|
|
Header fields in the ignore list are not printed
|
|
on your terminal when you print a message.
|
|
This
|
|
command is very handy for suppression of certain machine-generated
|
|
header fields.
|
|
The
|
|
.Ic Type
|
|
and
|
|
.Ic Print
|
|
commands can be used to print a message in its entirety, including
|
|
ignored fields.
|
|
If
|
|
.Ic ignore
|
|
is executed with no arguments, it lists the current set of
|
|
ignored fields.
|
|
.It Ic inc
|
|
Incorporate any new messages that have arrived while mail
|
|
is being read.
|
|
The new messages are added to the end of the message list,
|
|
and the current message is reset to be the first new mail message.
|
|
This does not renumber the existing message list, nor does
|
|
does it cause any changes made so far to be saved.
|
|
.It Ic mail
|
|
.Pq Ic m
|
|
Takes as argument login names and distribution group names and sends
|
|
mail to those people.
|
|
.It Ic mbox
|
|
Indicate that a list of messages be sent to
|
|
.Ic mbox
|
|
in your home directory when you quit.
|
|
This is the default
|
|
action for messages if you do
|
|
.Em not
|
|
have the
|
|
.Ic hold
|
|
option set.
|
|
.It Ic more
|
|
.Pq Ic \&mo
|
|
Takes a list of messages and invokes the pager on that list.
|
|
.It Ic next
|
|
.Ic ( n ,
|
|
like
|
|
.Ic \&+
|
|
or
|
|
.Tn CR )
|
|
Goes to the next message in sequence and types it.
|
|
With an argument list, types the next matching message.
|
|
.It Ic preserve
|
|
.Pq Ic pre
|
|
A synonym for
|
|
.Ic hold .
|
|
.It Ic print
|
|
.Pq Ic p
|
|
Takes a message list and types out each message on the user's terminal.
|
|
.It Ic quit
|
|
.Pq Ic q
|
|
Terminates the session, saving all undeleted, unsaved messages in
|
|
the user's
|
|
.Ar mbox
|
|
file in his login directory, preserving all messages marked with
|
|
.Ic hold
|
|
or
|
|
.Ic preserve
|
|
or never referenced
|
|
in his system mailbox, and removing all other messages from his system
|
|
mailbox.
|
|
If new mail has arrived during the session, the message
|
|
.Dq Li "You have new mail"
|
|
is given.
|
|
If given while editing a
|
|
mailbox file with the
|
|
.Fl f
|
|
flag, then the edit file is rewritten.
|
|
A return to the Shell is
|
|
effected, unless the rewrite of edit file fails, in which case the user
|
|
can escape with the
|
|
.Ic exit
|
|
command.
|
|
.It Ic reply
|
|
.Pq Ic r
|
|
Takes a message list and sends mail to the sender and all
|
|
recipients of the specified message.
|
|
The default message must not be deleted.
|
|
.It Ic respond
|
|
A synonym for
|
|
.Ic reply .
|
|
.It Ic retain
|
|
Add the list of header fields named to the
|
|
.Em "retained list" .
|
|
Only the header fields in the retained list
|
|
are shown on your terminal when you print a message.
|
|
All other header fields are suppressed.
|
|
The
|
|
.Ic type
|
|
and
|
|
.Ic print
|
|
commands can be used to print a message in its entirety.
|
|
If
|
|
.Ic retain
|
|
is executed with no arguments, it lists the current set of
|
|
retained fields.
|
|
.It Ic save
|
|
.Pq Ic s
|
|
Takes a message list and a filename and appends each message in
|
|
turn to the end of the file.
|
|
The filename in quotes, followed by the line
|
|
count and character count is echoed on the user's terminal.
|
|
.It Ic set
|
|
.Pq Ic se
|
|
With no arguments, prints all variable values.
|
|
Otherwise, sets
|
|
option.
|
|
Arguments are of the form
|
|
.Ar option=value
|
|
(no space before or after =) or
|
|
.Ar option .
|
|
Quotation marks may be placed around any part of the assignment statement to
|
|
quote blanks or tabs, i.e.\&
|
|
.Dq Li "set indentprefix=\*q->\*q"
|
|
.It Ic saveignore
|
|
.Ic Saveignore
|
|
is to
|
|
.Ic save
|
|
what
|
|
.Ic ignore
|
|
is to
|
|
.Ic print
|
|
and
|
|
.Ic type .
|
|
Header fields thus marked are filtered out when
|
|
saving a message by
|
|
.Ic save
|
|
or when automatically saving to
|
|
.Ar mbox .
|
|
.It Ic saveretain
|
|
.Ic Saveretain
|
|
is to
|
|
.Ic save
|
|
what
|
|
.Ic retain
|
|
is to
|
|
.Ic print
|
|
and
|
|
.Ic type .
|
|
Header fields thus marked are the only ones saved
|
|
with a message when saving by
|
|
.Ic save
|
|
or when automatically saving to
|
|
.Ar mbox .
|
|
.Ic Saveretain
|
|
overrides
|
|
.Ic saveignore .
|
|
.It Ic shell
|
|
.Pq Ic sh
|
|
Invokes an interactive version of the shell.
|
|
.It Ic size
|
|
Takes a message list and prints out the size in characters of each
|
|
message.
|
|
.It Ic source
|
|
The
|
|
.Ic source
|
|
command reads
|
|
commands from a file.
|
|
.It Ic top
|
|
Takes a message list and prints the top few lines of each.
|
|
The number of
|
|
lines printed is controlled by the variable
|
|
.Ic toplines
|
|
and defaults to five.
|
|
.It Ic type
|
|
.Pq Ic t
|
|
A synonym for
|
|
.Ic print .
|
|
.It Ic unalias
|
|
Takes a list of names defined by
|
|
.Ic alias
|
|
commands and discards the remembered groups of users.
|
|
The group names
|
|
no longer have any significance.
|
|
.It Ic undelete
|
|
.Pq Ic u
|
|
Takes a message list and marks each message as
|
|
.Ic not
|
|
being deleted.
|
|
.It Ic unread
|
|
.Pq Ic U
|
|
Takes a message list and marks each message as
|
|
.Ic not
|
|
having been read.
|
|
.It Ic unset
|
|
Takes a list of option names and discards their remembered values;
|
|
the inverse of
|
|
.Ic set .
|
|
.It Ic visual
|
|
.Pq Ic v
|
|
Takes a message list and invokes the display editor on each message.
|
|
.It Ic write
|
|
.Pq Ic w
|
|
Similar to
|
|
.Ic save ,
|
|
except that
|
|
.Ic only
|
|
the message body
|
|
.Pq Ar without
|
|
the header) is saved.
|
|
Extremely useful for such tasks as sending and receiving source
|
|
program text over the message system.
|
|
.It Ic xit
|
|
.Pq Ic x
|
|
A synonym for
|
|
.Ic exit .
|
|
.It Ic z
|
|
.Nm Mail
|
|
presents message headers in windowfuls as described under the
|
|
.Ic headers
|
|
command.
|
|
You can move
|
|
.Nm Ns 's
|
|
attention forward to the next window with the
|
|
.Ic \&z
|
|
command.
|
|
Also, you can move to the previous window by using
|
|
.Ic \&z\&\- .
|
|
.El
|
|
.Ss Tilde/Escapes
|
|
.Pp
|
|
Here is a summary of the tilde escapes,
|
|
which are used when composing messages to perform
|
|
special functions.
|
|
Tilde escapes are only recognized at the beginning
|
|
of lines.
|
|
The name
|
|
.Dq Em tilde\ escape
|
|
is somewhat of a misnomer since the actual escape character can be set
|
|
by the option
|
|
.Ic escape .
|
|
.Bl -tag -width Ds
|
|
.It Ic \&~! Ns Ar command
|
|
Execute the indicated shell command, then return to the message.
|
|
.It Ic \&~b Ns Ar name ...
|
|
Add the given names to the list of carbon copy recipients but do not make
|
|
the names visible in the Cc: line ("blind" carbon copy).
|
|
.It Ic \&~c Ns Ar name ...
|
|
Add the given names to the list of carbon copy recipients.
|
|
.It Ic \&~d
|
|
Read the file
|
|
.Dq Pa dead.letter
|
|
from your home directory into the message.
|
|
.It Ic \&~e
|
|
Invoke the text editor on the message collected so far.
|
|
After the
|
|
editing session is finished, you may continue appending text to the
|
|
message.
|
|
.It Ic \&~f Ns Ar messages
|
|
Read the named messages into the message being sent.
|
|
If no messages are specified, read in the current message.
|
|
Message headers currently being ignored (by the
|
|
.Ic ignore
|
|
or
|
|
.Ic retain
|
|
command) are not included.
|
|
.It Ic \&~F Ns Ar messages
|
|
Identical to
|
|
.Ic \&~f ,
|
|
except all message headers are included.
|
|
.It Ic \&~h
|
|
Edit the message header fields by typing each one in turn and allowing
|
|
the user to append text to the end or modify the field by using the
|
|
current terminal erase and kill characters.
|
|
.It Ic \&~m Ns Ar messages
|
|
Read the named messages into the message being sent, indented by a
|
|
tab or by the value of
|
|
.Ar indentprefix .
|
|
If no messages are specified,
|
|
read the current message.
|
|
Message headers currently being ignored (by the
|
|
.Ic ignore
|
|
or
|
|
.Ic retain
|
|
command) are not included.
|
|
.It Ic \&~M Ns Ar messages
|
|
Identical to
|
|
.Ic \&~m ,
|
|
except all message headers are included.
|
|
.It Ic \&~p
|
|
Print out the message collected so far, prefaced by the message header
|
|
fields.
|
|
.It Ic \&~q
|
|
Abort the message being sent, copying the message to
|
|
.Dq Pa dead.letter
|
|
in your home directory if
|
|
.Ic save
|
|
is set.
|
|
.It Ic \&~r Ns Ar filename
|
|
Read the named file into the message.
|
|
.It Ic \&~R Ns Ar string
|
|
Use
|
|
.Ar string
|
|
as the Reply-To field.
|
|
.It Ic \&~s Ns Ar string
|
|
Cause the named string to become the current subject field.
|
|
.It Ic \&~\&t Ns Ar name ...
|
|
Add the given names to the direct recipient list.
|
|
.It Ic \&~\&v
|
|
Invoke an alternative editor (defined by the
|
|
.Ev VISUAL
|
|
option) on the
|
|
message collected so far.
|
|
Usually, the alternative editor will be a
|
|
screen editor.
|
|
After you quit the editor, you may resume appending
|
|
text to the end of your message.
|
|
.It Ic \&~w Ns Ar filename
|
|
Write the message onto the named file.
|
|
.It Ic \&~\&| Ns Ar command
|
|
Pipe the message through the command as a filter.
|
|
If the command gives
|
|
no output or terminates abnormally, retain the original text of the
|
|
message.
|
|
The command
|
|
.Xr fmt 1
|
|
is often used as
|
|
.Ic command
|
|
to rejustify the message.
|
|
.It Ic \&~: Ns Ar mail-command
|
|
Execute the given mail command.
|
|
Not all commands, however, are allowed.
|
|
.It Ic \&~~ Ns Ar string
|
|
Insert the string of text in the message prefaced by a single ~.
|
|
If
|
|
you have changed the escape character, then you should double
|
|
that character in order to send it.
|
|
.El
|
|
.Ss Mail Options
|
|
Options are controlled via
|
|
.Ic set
|
|
and
|
|
.Ic unset
|
|
commands.
|
|
Options may be either binary, in which case it is only
|
|
significant to see whether they are set or not; or string, in which
|
|
case the actual value is of interest.
|
|
If an option is not set,
|
|
.Nm
|
|
will look for an environment variable of the same name.
|
|
The binary options include the following:
|
|
.Bl -tag -width append
|
|
.It Ar append
|
|
Causes messages saved in
|
|
.Ar mbox
|
|
to be appended to the end rather than prepended.
|
|
This should always be set (preferably in one of the system-wide
|
|
.Pa mail.rc
|
|
files).
|
|
.It Ar ask , asksub
|
|
Causes
|
|
.Nm
|
|
to prompt you for the subject of each message you send.
|
|
If
|
|
you respond with simply a newline, no subject field will be sent.
|
|
.It Ar askbcc
|
|
Causes you to be prompted for additional blind carbon copy recipients at the
|
|
end of each message.
|
|
Responding with a newline indicates your
|
|
satisfaction with the current list.
|
|
.It Ar askcc
|
|
Causes you to be prompted for additional carbon copy recipients at the
|
|
end of each message.
|
|
Responding with a newline indicates your
|
|
satisfaction with the current list.
|
|
.It Ar autoinc
|
|
Causes new mail to be automatically incorporated when it arrives.
|
|
Setting this is similar to issuing the
|
|
.Ic inc
|
|
command at each prompt, except that the current message is not
|
|
reset when new mail arrives.
|
|
.It Ar autoprint
|
|
Causes the
|
|
.Ic delete
|
|
command to behave like
|
|
.Ic dp
|
|
\- thus, after deleting a message, the next one will be typed
|
|
automatically.
|
|
.It Ar debug
|
|
Setting the binary option
|
|
.Ar debug
|
|
is the same as specifying
|
|
.Fl d
|
|
on the command line and causes
|
|
.Nm
|
|
to output all sorts of information useful for debugging
|
|
.Nm .
|
|
.It Ar dot
|
|
The binary option
|
|
.Ar dot
|
|
causes
|
|
.Nm
|
|
to interpret a period alone on a line as the terminator
|
|
of a message you are sending.
|
|
.It Ar hold
|
|
This option is used to hold messages in the system mailbox
|
|
by default.
|
|
.It Ar ignore
|
|
Causes interrupt signals from your terminal to be ignored and echoed as
|
|
@'s.
|
|
.It Ar ignoreeof
|
|
An option related to
|
|
.Ar dot
|
|
is
|
|
.Ar ignoreeof
|
|
which makes
|
|
.Nm
|
|
refuse to accept a control-d as the end of a message.
|
|
.Ar Ignoreeof
|
|
also applies to
|
|
.Nm
|
|
command mode.
|
|
.It Ar metoo
|
|
Usually, when a group is expanded that contains the sender, the sender
|
|
is removed from the expansion.
|
|
Setting this option causes the sender
|
|
to be included in the group.
|
|
.It Ar noheader
|
|
Setting the option
|
|
.Ar noheader
|
|
is the same as giving the
|
|
.Fl N
|
|
flag on the command line.
|
|
.It Ar nosave
|
|
Normally, when you abort a message with two
|
|
.Tn RUBOUT
|
|
(erase or delete)
|
|
.Nm
|
|
copies the partial letter to the file
|
|
.Dq Pa dead.letter
|
|
in your home directory.
|
|
Setting the binary option
|
|
.Ar nosave
|
|
prevents this.
|
|
.It Ar Replyall
|
|
Reverses the sense of
|
|
.Ic reply
|
|
and
|
|
.Ic Reply
|
|
commands.
|
|
.It Ar quiet
|
|
Suppresses the printing of the version when first invoked.
|
|
.It Ar searchheaders
|
|
If this option is set, then a message-list specifier in the form
|
|
.Dq Li / Ns Ar x Ns Li : Ns Ar y
|
|
will expand to all messages containing the substring
|
|
.Dq Ar y
|
|
in the header field
|
|
.Dq Ar x .
|
|
The string search is case insensitive.
|
|
If
|
|
.Dq Ar x
|
|
is ommitted, it will default to the
|
|
.Dq Li Subject
|
|
header field.
|
|
The form
|
|
.Dq Li /to: Ns Ar y
|
|
is a special case, and will expand
|
|
to all messages containing the substring
|
|
.Dq Ar y
|
|
in the
|
|
.Dq Li To ,
|
|
.Dq Li Cc
|
|
or
|
|
.Dq Li Bcc
|
|
header fields.
|
|
The check for
|
|
.Qq Li "to"
|
|
is case sensitive, so that
|
|
.Dq Li /to: Ns Ar y
|
|
can be used to limit the search for
|
|
.Dq Ar y
|
|
to just the
|
|
.Dq Li To:
|
|
field.
|
|
.It Ar verbose
|
|
Setting the option
|
|
.Ar verbose
|
|
is the same as using the
|
|
.Fl v
|
|
flag on the command line.
|
|
When mail runs in verbose mode,
|
|
the actual delivery of messages is displayed on the user's
|
|
terminal.
|
|
.El
|
|
.Ss Option String Values
|
|
.Bl -tag -width Va
|
|
.It Ev EDITOR
|
|
Pathname of the text editor to use in the
|
|
.Ic edit
|
|
command and
|
|
.Ic \&~e
|
|
escape.
|
|
If not defined, then a default editor is used.
|
|
.It Ev LISTER
|
|
Pathname of the directory lister to use in the
|
|
.Ic folders
|
|
command.
|
|
Default is
|
|
.Pa /bin/ls .
|
|
.It Ev PAGER
|
|
Pathname of the program to use in the
|
|
.Ic more
|
|
command or when
|
|
.Ic crt
|
|
variable is set.
|
|
The default paginator
|
|
.Xr more 1
|
|
is used if this option is not defined.
|
|
.It Ev REPLYTO
|
|
If set, will be used to initialize the Reply-To field for outgoing
|
|
messages.
|
|
.It Ev SHELL
|
|
Pathname of the shell to use in the
|
|
.Ic \&!
|
|
command and the
|
|
.Ic \&~!
|
|
escape.
|
|
A default shell is used if this option is
|
|
not defined.
|
|
.It Ev VISUAL
|
|
Pathname of the text editor to use in the
|
|
.Ic visual
|
|
command and
|
|
.Ic \&~v
|
|
escape.
|
|
.It Va crt
|
|
The valued option
|
|
.Va crt
|
|
is used as a threshold to determine how long a message must
|
|
be before
|
|
.Ev PAGER
|
|
is used to read it.
|
|
If
|
|
.Va crt
|
|
is set without a value,
|
|
then the height of the terminal screen stored in the system
|
|
is used to compute the threshold (see
|
|
.Xr stty 1 ) .
|
|
.It Ar escape
|
|
If defined, the first character of this option gives the character to
|
|
use in the place of ~ to denote escapes.
|
|
.It Ar folder
|
|
The name of the directory to use for storing folders of
|
|
messages.
|
|
If this name begins with a `/',
|
|
.Nm
|
|
considers it to be an absolute pathname; otherwise, the
|
|
folder directory is found relative to your home directory.
|
|
.It Ev MBOX
|
|
The name of the
|
|
.Ar mbox
|
|
file.
|
|
It can be the name of a folder.
|
|
The default is
|
|
.Dq Li mbox
|
|
in the user's home directory.
|
|
.It Ar record
|
|
If defined, gives the pathname of the file used to record all outgoing
|
|
mail.
|
|
If not defined, then outgoing mail is not so saved.
|
|
.It Ar indentprefix
|
|
String used by the ``~m'' tilde escape for indenting messages, in place of
|
|
the normal tab character (^I).
|
|
Be sure to quote the value if it contains
|
|
spaces or tabs.
|
|
.It Ar toplines
|
|
If defined, gives the number of lines of a message to be printed out
|
|
with the
|
|
.Ic top
|
|
command; normally, the first five lines are printed.
|
|
.El
|
|
.Sh ENVIRONMENT
|
|
.Nm Mail
|
|
utilizes the
|
|
.Ev HOME
|
|
and
|
|
.Ev USER
|
|
environment variables. Also, if the
|
|
.Ev MAIL
|
|
environment variable is set, it is used as the
|
|
location of the user's mailbox instead of the
|
|
default in /var/mail.
|
|
.Sh FILES
|
|
.Bl -tag -width /usr/share/misc/mail.*help -compact
|
|
.It Pa /var/mail/*
|
|
Post office.
|
|
.It Pa ~/mbox
|
|
User's old mail.
|
|
.It Pa ~/.mailrc
|
|
File giving initial mail commands.
|
|
This can be overridden by setting the
|
|
.Ev MAILRC
|
|
environment variable.
|
|
.It Pa /tmp/R*
|
|
Temporary files.
|
|
.It Pa /usr/share/misc/mail.*help
|
|
Help files.
|
|
.Pp
|
|
.It Pa /usr/share/misc/mail.rc
|
|
.It Pa /usr/local/etc/mail.rc
|
|
.It Pa /etc/mail.rc
|
|
System-wide initialization files.
|
|
Each file will be sourced, in order,
|
|
if it exists.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr fmt 1 ,
|
|
.Xr newaliases 1 ,
|
|
.Xr vacation 1 ,
|
|
.Xr aliases 5 ,
|
|
.Xr mailaddr 7 ,
|
|
.Xr sendmail 8
|
|
.Rs
|
|
.%T "The Mail Reference Manual"
|
|
.Re
|
|
.Sh HISTORY
|
|
A
|
|
.Nm
|
|
command
|
|
appeared in
|
|
.At v1 .
|
|
This man page is derived from
|
|
.%T "The Mail Reference Manual"
|
|
originally written by Kurt Shoens.
|
|
.Sh BUGS
|
|
There are some flags that are not documented here.
|
|
Most are
|
|
not useful to the general user.
|
|
.Pp
|
|
Usually,
|
|
.Nm
|
|
is just a link to
|
|
.Nm Mail ,
|
|
which can be confusing.
|
|
.Pp
|
|
The name of the
|
|
.Ic alternates
|
|
list is incorrect English (it should be
|
|
.Dq alternatives ) ,
|
|
but is retained for compatibility.
|