Send
is not normally run directly by the user. Instead, mail protocol
agents like
smtpd
(see
smtp(8))
and mail preparers like
marshal(1)
fork and execute
send.
Send
reads a message from standard input and disposes of it in one
of four ways:
- If
mailaddr
refers to a local mailbox, it appends it to the
recipient's mailbox.
- If
mailaddr
is remote, it queues the mail for remote delivery.
- If the
-r
option is given and the mail is undeliverable, it
returns the mail to the sender.
- if the
-r
option is not given and the mail is undeliverable, it
appends the mail to
/mail/box/username/dead.letter
and prints a message to standard error.
The file
/mail/lib/rewrite
determines exactly how to deliver or queue the mail.
The decision is based purely on the recipient address.
The options are:
- -b
- suppresses the addition of the
To:
line.
- -i
- let the message input be terminated by a line
containing only a period, for
compatibility with
old mailers.
- -x
- do not send mail, but instead report
the full mail address of the recipient.
- -#
- do not send mail, but instead report
what command would be used to send the mail.
- -r
- input is via a pipe from another program.
Expect a From
line at the start of the message to provide the
name of the sender and timestamp. This implies
the
-b
option.
Send
uses the login name as the reply address.