]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/mail/mail.1
bhyvectl(8): Normalize the man page date
[FreeBSD/FreeBSD.git] / usr.bin / mail / mail.1
1 .\" Copyright (c) 1980, 1990, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)mail.1      8.8 (Berkeley) 4/28/95
29 .\" $FreeBSD$
30 .\"
31 .Dd August 8, 2018
32 .Dt MAIL 1
33 .Os
34 .Sh NAME
35 .Nm mail ,
36 .Nm Mail ,
37 .Nm mailx
38 .Nd send and receive mail
39 .Sh SYNOPSIS
40 .Nm
41 .Op Fl dEiInv
42 .Op Fl s Ar subject
43 .Op Fl c Ar cc-addr
44 .Op Fl b Ar bcc-addr
45 .Op Fl F
46 .Ar to-addr ...
47 .Op Fl Ar sendmail-option ...
48 .Nm
49 .Op Fl dEHiInNv
50 .Op Fl F
51 .Fl f
52 .Op Ar name
53 .Nm
54 .Op Fl dEHiInNv
55 .Op Fl F
56 .Op Fl u Ar user
57 .Nm
58 .Op Fl d
59 .Fl e
60 .Op Fl f Ar name
61 .Sh INTRODUCTION
62 The
63 .Nm
64 utility is an intelligent mail processing system, which has
65 a command syntax reminiscent of
66 .Xr ed 1
67 with lines replaced by messages.
68 .Pp
69 The following options are available:
70 .Bl -tag -width indent
71 .It Fl v
72 Verbose mode.
73 The details of
74 delivery are displayed on the user's terminal.
75 .It Fl d
76 Debugging mode.
77 See the
78 .Va debug
79 mail option for details.
80 .It Fl e
81 Test for the presence of mail in the (by default, system)
82 mailbox.
83 An exit status of 0 is returned if
84 it has mail; otherwise, an exit status
85 of 1 is returned.
86 .It Fl H
87 Write a header summary only, then exit.
88 .It Fl E
89 Do not send messages with an empty body.
90 This is useful for piping errors from
91 .Xr cron 8
92 scripts.
93 .It Fl i
94 Ignore tty interrupt signals.
95 This is
96 particularly useful when using
97 .Nm
98 on noisy phone lines.
99 .It Fl I
100 Force
101 .Nm
102 to run in interactive mode even when
103 input is not a terminal.
104 In particular, the
105 .Ql ~
106 special
107 character when sending mail is only active in interactive mode.
108 .It Fl n
109 Inhibit reading the system-wide
110 .Pa mail.rc
111 files upon startup.
112 .It Fl N
113 Inhibit the initial display of message headers
114 when reading mail or editing a mail folder.
115 .It Fl s Ar subject
116 Specify
117 .Ar subject
118 on command line.
119 (Only the first argument after the
120 .Fl s
121 flag is used as a subject; be careful to quote subjects
122 containing spaces.)
123 .It Fl c Ar cc-addr
124 Send carbon copies to
125 .Ar cc-addr
126 list of users.
127 The
128 .Ar cc-addr
129 argument should be a comma-separated list of names.
130 .It Fl b Ar bcc-addr
131 Send blind carbon copies to
132 .Ar bcc-addr
133 list of users.
134 The
135 .Ar bcc-addr
136 argument should be a comma-separated list of names.
137 .It Fl f Op Ar mbox
138 Read in the contents of your
139 .Pa mbox
140 (or the specified file)
141 for processing; when you
142 .Ic quit ,
143 .Nm
144 writes undeleted messages back to this file.
145 .It Fl F
146 Record the message in a file named after the first
147 recipient.
148 The name is the login-name portion of the
149 address found first on the
150 .Dq Li To:
151 line in the mail header.
152 Overrides the
153 .Va record
154 variable, if set.
155 .It Fl u Ar user
156 Is equivalent to:
157 .Pp
158 .Dl "mail -f /var/mail/user"
159 .El
160 .Ss "Startup Actions"
161 At startup time
162 .Nm
163 will execute commands in the system command files
164 .Pa /usr/share/misc/mail.rc ,
165 .Pa /usr/local/etc/mail.rc
166 and
167 .Pa /etc/mail.rc
168 in order, unless explicitly told not to by the use of the
169 .Fl n
170 option.
171 Next, the commands in the user's personal command file
172 .Pa ~/.mailrc
173 are executed.
174 The
175 .Nm
176 utility then examines its command line options to determine whether a
177 new message is to be sent, or whether an existing mailbox is to
178 be read.
179 .Ss "Sending Mail"
180 To send a message to one or more people,
181 .Nm
182 can be invoked with arguments which are the names of people to
183 whom the mail will be sent.
184 You are then expected to type in
185 your message, followed
186 by a
187 .Aq Li control-D
188 at the beginning of a line.
189 The section below
190 .Sx "Replying To or Originating Mail" ,
191 describes some features of
192 .Nm
193 available to help you compose your letter.
194 .Ss "Reading Mail"
195 In normal usage
196 .Nm
197 is given no arguments and checks your mail out of the
198 post office, then
199 prints out a one line header of each message found.
200 The current message is initially the first message (numbered 1)
201 and can be printed using the
202 .Ic print
203 command (which can be abbreviated
204 .Ic p ) .
205 You can move among the messages much as you move between lines in
206 .Xr ed 1 ,
207 with the commands
208 .Ic +
209 and
210 .Ic \-
211 moving backwards and forwards, and
212 simple numbers.
213 .Ss "Disposing of Mail"
214 After examining a message you can
215 .Ic delete
216 .Pq Ic d
217 the message or
218 .Ic reply
219 .Pq Ic r
220 to it.
221 Deletion causes the
222 .Nm
223 program to forget about the message.
224 This is not irreversible; the message can be
225 .Ic undeleted
226 .Pq Ic u
227 by giving its number, or the
228 .Nm
229 session can be aborted by giving the
230 .Ic exit
231 .Pq Ic x
232 command.
233 Deleted messages will, however, usually disappear never to be seen again.
234 .Ss "Specifying Messages"
235 Commands such as
236 .Ic print
237 and
238 .Ic delete
239 can be given a list of message numbers as arguments to apply
240 to a number of messages at once.
241 Thus
242 .Dq Li "delete 1 2"
243 deletes messages 1 and 2, while
244 .Dq Li "delete 1\-5"
245 deletes messages 1 through 5.
246 The special name
247 .Ql *
248 addresses all messages, and
249 .Ql $
250 addresses
251 the last message; thus the command
252 .Ic top
253 which prints the first few lines of a message could be used in
254 .Dq Li "top *"
255 to print the first few lines of all messages.
256 .Ss "Replying To or Originating Mail"
257 You can use the
258 .Ic reply
259 command to
260 set up a response to a message, sending it back to the
261 person who it was from.
262 Text you then type in, up to an end-of-file,
263 defines the contents of the message.
264 While you are composing a message,
265 .Nm
266 treats lines beginning with the character
267 .Ql ~
268 specially.
269 For instance, typing
270 .Ic ~m
271 (alone on a line) will place a copy
272 of the current message into the response right shifting it by a tabstop
273 (see
274 .Va indentprefix
275 variable, below).
276 Other escapes will set up subject fields, add and delete recipients
277 to the message and allow you to escape to an editor to revise the
278 message or to a shell to run some commands.
279 (These options
280 are given in the summary below.)
281 .Ss "Ending a Mail Processing Session"
282 You can end a
283 .Nm
284 session with the
285 .Ic quit
286 .Pq Ic q
287 command.
288 Messages which have been examined go to your
289 .Pa mbox
290 file unless they have been deleted in which case they are discarded.
291 Unexamined messages go back to the post office.
292 (See the
293 .Fl f
294 option above).
295 .Ss "Personal and System Wide Distribution Lists"
296 It is also possible to create a personal distribution lists so that,
297 for instance, you can send mail to
298 .Dq Li cohorts
299 and have it go
300 to a group of people.
301 Such lists can be defined by placing a line like
302 .Pp
303 .Dl "alias cohorts bill ozalp jkf mark kridle@ucbcory"
304 .Pp
305 in the file
306 .Pa .mailrc
307 in your home directory.
308 The current list of such aliases can be displayed with the
309 .Ic alias
310 command in
311 .Nm .
312 System wide distribution lists can be created by editing
313 .Pa /etc/mail/aliases ,
314 see
315 .Xr aliases 5
316 and
317 .Xr sendmail 8 ;
318 these are kept in a different syntax.
319 In mail you send, personal aliases will be expanded in mail sent
320 to others so that they will be able to
321 .Ic reply
322 to the recipients.
323 System wide
324 aliases
325 are not expanded when the mail is sent,
326 but any reply returned to the machine will have the system wide
327 alias expanded as all mail goes through
328 .Xr sendmail 8 .
329 .Ss "Network Mail (ARPA, UUCP, Berknet)"
330 .Pp
331 The
332 .Nm
333 utility has a number of options which can be set in the
334 .Pa .mailrc
335 file to alter its behavior; thus
336 .Dq Li "set askcc"
337 enables the
338 .Va askcc
339 feature.
340 (These options are summarized below.)
341 .Sh SUMMARY
342 (Adapted from the
343 .%T "Mail Reference Manual" . )
344 .Pp
345 Each command is typed on a line by itself, and may take arguments
346 following the command word.
347 The command need not be typed in its
348 entirety \(em the first command which matches the typed prefix is used.
349 For commands which take message lists as arguments, if no message
350 list is given, then the next message forward which satisfies the
351 command's requirements is used.
352 If there are no messages forward of
353 the current message, the search proceeds backwards, and if there are no
354 good messages at all,
355 .Nm
356 types
357 .Dq Li "No applicable messages"
358 and
359 aborts the command.
360 .Bl -tag -width indent
361 .It Ic \-
362 Print out the preceding message.
363 If given a numeric
364 argument
365 .Ar n ,
366 goes to the
367 .Ar n Ns 'th
368 previous message and prints it.
369 .It Ic #
370 ignore the remainder of the line as a comment.
371 .It Ic \&?
372 Prints a brief summary of commands.
373 .It Ic \&!
374 Executes the shell
375 (see
376 .Xr sh 1
377 and
378 .Xr csh 1 )
379 command which follows.
380 .It Ic Print
381 .Pq Ic P
382 Like
383 .Ic print
384 but also prints out ignored header fields.
385 See also
386 .Ic print , ignore
387 and
388 .Ic retain .
389 .It Ic Reply
390 .Pq Ic R
391 Reply to originator.
392 Does not reply to other
393 recipients of the original message.
394 .It Ic Type
395 .Pq Ic T
396 Identical to the
397 .Ic Print
398 command.
399 .It Ic alias
400 .Pq Ic a
401 With no arguments, prints out all currently-defined aliases.
402 With one
403 argument, prints out that alias.
404 With more than one argument, creates
405 a new alias or changes an old one.
406 .It Ic alternates
407 .Pq Ic alt
408 The
409 .Ic alternates
410 command is useful if you have accounts on several machines.
411 It can be used to inform
412 .Nm
413 that the listed addresses are really you.
414 When you
415 .Ic reply
416 to messages,
417 .Nm
418 will not send a copy of the message to any of the addresses
419 listed on the
420 .Ic alternates
421 list.
422 If the
423 .Ic alternates
424 command is given with no argument, the current set of alternative
425 names is displayed.
426 .It Ic chdir
427 .Pq Ic c
428 Changes the user's working directory to that specified, if given.
429 If
430 no directory is given, then changes to the user's login directory.
431 .It Ic copy
432 .Pq Ic co
433 The
434 .Ic copy
435 command does the same thing that
436 .Ic save
437 does, except that it does not mark the messages it
438 is used on for deletion when you
439 .Ic quit .
440 .It Ic delete
441 .Pq Ic d
442 Takes a list of messages as argument and marks them all as deleted.
443 Deleted messages will not be saved in
444 .Pa mbox ,
445 nor will they be available for most other commands.
446 .It Ic dp
447 (also
448 .Ic dt )
449 Deletes the current message and prints the next message.
450 If there is no next message,
451 .Nm
452 says
453 .Dq Li "at EOF" .
454 .It Ic edit
455 .Pq Ic e
456 Takes a list of messages and points the text editor at each one in
457 turn.
458 On return from the editor, the message is read back in.
459 .It Ic exit
460 .Ic ( ex
461 or
462 .Ic x )
463 Effects an immediate return to the shell without
464 modifying the user's system mailbox, his
465 .Pa mbox
466 file, or his edit file in
467 .Fl f .
468 .It Ic file
469 .Pq Ic fi
470 The same as
471 .Ic folder .
472 .It Ic folders
473 List the names of the folders in your folder directory.
474 .It Ic folder
475 .Pq Ic fo
476 The
477 .Ic folder
478 command switches to a new mail file or folder.
479 With no
480 arguments, it tells you which file you are currently reading.
481 If you give it an argument, it will write out changes (such
482 as deletions) you have made in the current file and read in
483 the new file.
484 Some special conventions are recognized for
485 the name.
486 .Ql #
487 means the previous file,
488 .Ql %
489 means your system mailbox,
490 .Dq Li % Ns Ar user
491 means user's system mailbox,
492 .Ql &
493 means your
494 .Pa mbox
495 file, and
496 .Dq Li + Ns Ar folder
497 means a file in your folder
498 directory.
499 .It Ic from
500 .Pq Ic f
501 Takes a list of messages and prints their message headers.
502 .It Ic headers
503 .Pq Ic h
504 Lists the current range of headers, which is an 18-message group.
505 If
506 a
507 .Ql +
508 argument is given, then the next 18-message group is printed, and if
509 a
510 .Ql \-
511 argument is given, the previous 18-message group is printed.
512 .It Ic help
513 A synonym for
514 .Ic \&? .
515 .It Ic hold
516 .Ic ( ho ,
517 also
518 .Ic preserve )
519 Takes a message list and marks each
520 message therein to be saved in the
521 user's system mailbox instead of in
522 .Pa mbox .
523 Does not override the
524 .Ic delete
525 command.
526 .It Ic ignore
527 Add the list of header fields named to the
528 .Ar ignored list .
529 Header fields in the ignore list are not printed
530 on your terminal when you print a message.
531 This
532 command is very handy for suppression of certain machine-generated
533 header fields.
534 The
535 .Ic Type
536 and
537 .Ic Print
538 commands can be used to print a message in its entirety, including
539 ignored fields.
540 If
541 .Ic ignore
542 is executed with no arguments, it lists the current set of
543 ignored fields.
544 .It Ic inc
545 Incorporate any new messages that have arrived while mail
546 is being read.
547 The new messages are added to the end of the message list,
548 and the current message is reset to be the first new mail message.
549 This does not renumber the existing message list, nor
550 does it cause any changes made so far to be saved.
551 .It Ic mail
552 .Pq Ic m
553 Takes as argument login names and distribution group names and sends
554 mail to those people.
555 .It Ic mbox
556 Indicate that a list of messages be sent to
557 .Pa mbox
558 in your home directory when you quit.
559 This is the default
560 action for messages if you do
561 .Em not
562 have the
563 .Ic hold
564 option set.
565 .It Ic more
566 .Pq Ic mo
567 Takes a list of messages and invokes the pager on that list.
568 .It Ic next
569 .Ic ( n ,
570 like
571 .Ic +
572 or
573 .Tn CR )
574 Goes to the next message in sequence and types it.
575 With an argument list, types the next matching message.
576 .It Ic preserve
577 .Pq Ic pre
578 A synonym for
579 .Ic hold .
580 .It Ic print
581 .Pq Ic p
582 Takes a message list and types out each message on the user's terminal.
583 .It Ic quit
584 .Pq Ic q
585 Terminates the session, saving all undeleted, unsaved messages in
586 the user's
587 .Pa mbox
588 file in his login directory, preserving all messages marked with
589 .Ic hold
590 or
591 .Ic preserve
592 or never referenced
593 in his system mailbox, and removing all other messages from his system
594 mailbox.
595 If new mail has arrived during the session, the message
596 .Dq Li "You have new mail"
597 is given.
598 If given while editing a
599 mailbox file with the
600 .Fl f
601 flag, then the edit file is rewritten.
602 A return to the shell is
603 effected, unless the rewrite of edit file fails, in which case the user
604 can escape with the
605 .Ic exit
606 command.
607 .It Ic reply
608 .Pq Ic r
609 Takes a message list and sends mail to the sender and all
610 recipients of the specified message.
611 The default message must not be deleted.
612 .It Ic respond
613 A synonym for
614 .Ic reply .
615 .It Ic retain
616 Add the list of header fields named to the
617 .Em "retained list" .
618 Only the header fields in the retained list
619 are shown on your terminal when you print a message.
620 All other header fields are suppressed.
621 The
622 .Ic type
623 and
624 .Ic print
625 commands can be used to print a message in its entirety.
626 If
627 .Ic retain
628 is executed with no arguments, it lists the current set of
629 retained fields.
630 .It Ic save
631 .Pq Ic s
632 Takes a message list and a filename and appends each message in
633 turn to the end of the file.
634 The filename in quotes, followed by the line
635 count and character count is echoed on the user's terminal.
636 .It Ic set
637 .Pq Ic se
638 With no arguments, prints all variable values.
639 Otherwise, sets
640 option.
641 Arguments are of the form
642 .Ar option Ns Li = Ns Ar value
643 (no space before or after
644 .Ql = )
645 or
646 .Ar option .
647 Quotation marks may be placed around any part of the assignment statement to
648 quote blanks or tabs, i.e.\&
649 .Dq Li "set indentprefix=\*q->\*q"
650 .It Ic saveignore
651 .Ic Saveignore
652 is to
653 .Ic save
654 what
655 .Ic ignore
656 is to
657 .Ic print
658 and
659 .Ic type .
660 Header fields thus marked are filtered out when
661 saving a message by
662 .Ic save
663 or when automatically saving to
664 .Pa mbox .
665 .It Ic saveretain
666 .Ic Saveretain
667 is to
668 .Ic save
669 what
670 .Ic retain
671 is to
672 .Ic print
673 and
674 .Ic type .
675 Header fields thus marked are the only ones saved
676 with a message when saving by
677 .Ic save
678 or when automatically saving to
679 .Pa mbox .
680 .Ic Saveretain
681 overrides
682 .Ic saveignore .
683 .It Ic shell
684 .Pq Ic sh
685 Invokes an interactive version of the shell.
686 .It Ic size
687 Takes a message list and prints out the size in characters of each
688 message.
689 .It Ic source
690 The
691 .Ic source
692 command reads
693 commands from a file.
694 .It Ic top
695 Takes a message list and prints the top few lines of each.
696 The number of
697 lines printed is controlled by the variable
698 .Va toplines
699 and defaults to 5.
700 .It Ic type
701 .Pq Ic t
702 A synonym for
703 .Ic print .
704 .It Ic unalias
705 Takes a list of names defined by
706 .Ic alias
707 commands and discards the remembered groups of users.
708 The group names
709 no longer have any significance.
710 .It Ic undelete
711 .Pq Ic u
712 Takes a message list and marks each message as
713 .Em not
714 being deleted.
715 .It Ic unread
716 .Pq Ic U
717 Takes a message list and marks each message as
718 .Em not
719 having been read.
720 .It Ic unset
721 Takes a list of option names and discards their remembered values;
722 the inverse of
723 .Ic set .
724 .It Ic visual
725 .Pq Ic v
726 Takes a message list and invokes the display editor on each message.
727 .It Ic write
728 .Pq Ic w
729 Similar to
730 .Ic save ,
731 except that
732 .Em only
733 the message body
734 .Em ( without
735 the header) is saved.
736 Extremely useful for such tasks as sending and receiving source
737 program text over the message system.
738 .It Ic xit
739 .Pq Ic x
740 A synonym for
741 .Ic exit .
742 .It Ic z
743 The
744 .Nm
745 utility presents message headers in windowfuls as described under the
746 .Ic headers
747 command.
748 You can move
749 .Nm Ns 's
750 attention forward to the next window with the
751 .Ic z
752 command.
753 Also, you can move to the previous window by using
754 .Ic z\- .
755 .El
756 .Ss Tilde/Escapes
757 Here is a summary of the tilde escapes,
758 which are used when composing messages to perform
759 special functions.
760 Tilde escapes are only recognized at the beginning
761 of lines.
762 The name
763 .Dq "tilde escape"
764 is somewhat of a misnomer since the actual escape character can be set
765 by the option
766 .Va escape .
767 .Bl -tag -width indent
768 .It Ic ~a
769 Inserts the autograph string from the sign= option into the message.
770 .It Ic ~A
771 Inserts the autograph string from the Sign= option into the message.
772 .It Ic ~b Ar name ...
773 Add the given names to the list of carbon copy recipients but do not make
774 the names visible in the Cc: line
775 .Dq ( blind
776 carbon copy).
777 .It Ic ~c Ar name ...
778 Add the given names to the list of carbon copy recipients.
779 .It Ic ~d
780 Read the file
781 .Pa dead.letter
782 from your home directory into the message.
783 .It Ic ~e
784 Invoke the text editor on the message collected so far.
785 After the
786 editing session is finished, you may continue appending text to the
787 message.
788 .It Ic ~f Ar messages
789 Read the named messages into the message being sent.
790 If no messages are specified, read in the current message.
791 Message headers currently being ignored (by the
792 .Ic ignore
793 or
794 .Ic retain
795 command) are not included.
796 .It Ic ~F Ar messages
797 Identical to
798 .Ic ~f ,
799 except all message headers are included.
800 .It Ic ~h
801 Edit the message header fields by typing each one in turn and allowing
802 the user to append text to the end or modify the field by using the
803 current terminal erase and kill characters.
804 .It Ic ~i Ar string
805 Inserts the value of the named option into the text of the message.
806 .It Ic ~m Ar messages
807 Read the named messages into the message being sent, indented by a
808 tab or by the value of
809 .Va indentprefix .
810 If no messages are specified,
811 read the current message.
812 Message headers currently being ignored (by the
813 .Ic ignore
814 or
815 .Ic retain
816 command) are not included.
817 .It Ic ~M Ar messages
818 Identical to
819 .Ic ~m ,
820 except all message headers are included.
821 .It Ic ~p
822 Print out the message collected so far, prefaced by the message header
823 fields.
824 .It Ic ~q
825 Abort the message being sent, copying the message to
826 .Pa dead.letter
827 in your home directory if
828 .Va save
829 is set.
830 .It Ic ~r Ar filename , Ic ~r Li \&! Ns Ar command
831 .It Ic ~< Ar filename , Ic ~< Li \&! Ns Ar command
832 Read the named file into the message.
833 If the argument begins with a
834 .Ql \&! ,
835 the rest of the string is taken as an arbitrary system command and is
836 executed, with the standard output inserted into the message.
837 .It Ic ~R Ar string
838 Use
839 .Ar string
840 as the Reply-To field.
841 .It Ic ~s Ar string
842 Cause the named string to become the current subject field.
843 .It Ic ~t Ar name ...
844 Add the given names to the direct recipient list.
845 .It Ic ~v
846 Invoke an alternative editor (defined by the
847 .Ev VISUAL
848 environment variable) on the
849 message collected so far.
850 Usually, the alternative editor will be a
851 screen editor.
852 After you quit the editor, you may resume appending
853 text to the end of your message.
854 .It Ic ~w Ar filename
855 Write the message onto the named file.
856 .It Ic ~x
857 Exits as with
858 .Ic ~q ,
859 except the message is not saved in
860 .Pa dead.letter .
861 .It Ic ~! Ar command
862 Execute the indicated shell command, then return to the message.
863 .It Ic ~| Ar command , Ic ~^ Ar command
864 Pipe the message through the command as a filter.
865 If the command gives
866 no output or terminates abnormally, retain the original text of the
867 message.
868 The command
869 .Xr fmt 1
870 is often used as
871 .Ar command
872 to rejustify the message.
873 .It Ic ~: Ar mail-command , Ic ~_ Ar mail-command
874 Execute the given
875 .Nm
876 command.
877 Not all commands, however, are allowed.
878 .It Ic ~.
879 Simulate end-of-file on input.
880 .It Ic ~?
881 Print a summary of the available command escapes.
882 .It Ic ~~ Ar string
883 Insert the string of text in the message prefaced by a single
884 .Ql ~ .
885 If
886 you have changed the escape character, then you should double
887 that character in order to send it.
888 .El
889 .Ss "Mail Options"
890 Options can be set with the
891 .Ic set
892 command
893 and can be disabled with the
894 .Ic unset
895 or
896 .Ic set Cm no Ns Ar name
897 commands.
898 Options may be either binary, in which case it is only
899 significant to see whether they are set or not; or string, in which
900 case the actual value is of interest.
901 If an option is not set,
902 .Nm
903 will look for an environment variable of the same name.
904 The available options include the following:
905 .Bl -tag -width indent
906 .It Va append
907 Causes messages saved in
908 .Pa mbox
909 to be appended to the end rather than prepended.
910 This should always be set (preferably in one of the system-wide
911 .Pa mail.rc
912 files).
913 Default is
914 .Va noappend .
915 .It Va ask , asksub
916 Causes
917 .Nm
918 to prompt you for the subject of each message you send.
919 If
920 you respond with simply a newline, no subject field will be sent.
921 Default is
922 .Va asksub .
923 .It Va askbcc
924 Causes you to be prompted for additional blind carbon copy recipients at the
925 end of each message.
926 Responding with a newline indicates your
927 satisfaction with the current list.
928 Default is
929 .Va noaskbcc .
930 .It Va askcc
931 Causes you to be prompted for additional carbon copy recipients at the
932 end of each message.
933 Responding with a newline indicates your
934 satisfaction with the current list.
935 Default is
936 .Va noaskcc .
937 .It Va autoinc
938 Causes new mail to be automatically incorporated when it arrives.
939 Setting this is similar to issuing the
940 .Ic inc
941 command at each prompt, except that the current message is not
942 reset when new mail arrives.
943 Default is
944 .Va noautoinc .
945 .It Va autoprint
946 Causes the
947 .Ic delete
948 command to behave like
949 .Ic dp ;
950 thus, after deleting a message, the next one will be typed
951 automatically.
952 Default is
953 .Va noautoprint .
954 .It Va crt
955 The valued option
956 .Va crt
957 is used as a threshold to determine how long a message must
958 be before
959 .Ev PAGER
960 is used to read it.
961 If
962 .Va crt
963 is set without a value,
964 then the height of the terminal screen stored in the system
965 is used to compute the threshold (see
966 .Xr stty 1 ) .
967 Default is
968 .Va nocrt .
969 .It Va debug
970 Setting the binary option
971 .Va debug
972 is the same as specifying
973 .Fl d
974 on the command line and causes
975 .Nm
976 to output all sorts of information useful for debugging
977 .Nm .
978 In case
979 .Nm
980 is invoked in this mode to send mail, all preparations
981 will be performed and reported about, but the mail will
982 not be actually sent.
983 Default is
984 .Va nodebug .
985 .It Va dot
986 The binary option
987 .Va dot
988 causes
989 .Nm
990 to interpret a period alone on a line as the terminator
991 of a message you are sending.
992 Default is
993 .Va nodot .
994 .It Va escape
995 If defined, the first character of this option gives the character to
996 use in place of
997 .Ql ~
998 to denote escapes.
999 .It Va flipr
1000 Reverses the sense of
1001 .Ic reply
1002 and
1003 .Ic Reply
1004 commands.
1005 Default is
1006 .Va noflipr .
1007 .It Va folder
1008 The name of the directory to use for storing folders of
1009 messages.
1010 If this name begins with a
1011 .Ql / ,
1012 .Nm
1013 considers it to be an absolute pathname; otherwise, the
1014 folder directory is found relative to your home directory.
1015 .It Va header
1016 If defined, initially display message headers when reading mail or
1017 editing a mail folder.
1018 Default is
1019 .Va header .
1020 This option can be disabled by giving the
1021 .Fl N
1022 flag on the command line.
1023 .It Va hold
1024 This option is used to hold messages in the system mailbox
1025 by default.
1026 Default is
1027 .Va nohold .
1028 .It Va ignore
1029 Causes interrupt signals from your terminal to be ignored and echoed as
1030 .Li @ Ns 's.
1031 Default is
1032 .Va noignore .
1033 .It Va ignoreeof
1034 An option related to
1035 .Va dot
1036 is
1037 .Va ignoreeof
1038 which makes
1039 .Nm
1040 refuse to accept a
1041 .Aq Li control-D
1042 as the end of a message.
1043 .Ar Ignoreeof
1044 also applies to
1045 .Nm
1046 command mode.
1047 Default is
1048 .Va noignoreeof .
1049 .It Va indentprefix
1050 String used by the
1051 .Ic ~m
1052 tilde escape for indenting messages, in place of
1053 the normal tab character
1054 .Pq Li ^I .
1055 Be sure to quote the value if it contains
1056 spaces or tabs.
1057 .It Va metoo
1058 Usually, when a group is expanded that contains the sender, the sender
1059 is removed from the expansion.
1060 Setting this option causes the sender
1061 to be included in the group.
1062 Default is
1063 .Va nometoo .
1064 .It Va quiet
1065 Suppresses the printing of the version when first invoked.
1066 Default is
1067 .Va noquiet .
1068 .It Va record
1069 If defined, gives the pathname of the file used to record all outgoing
1070 mail.
1071 If not defined, outgoing mail is not saved.
1072 Default is
1073 .Va norecord .
1074 .It Va Replyall
1075 Reverses the sense of
1076 .Ic reply
1077 and
1078 .Ic Reply
1079 commands.
1080 Default is
1081 .Va noReplyall .
1082 .It Va save
1083 If this option is set, and you abort a message with two
1084 .Tn RUBOUT
1085 (erase or delete),
1086 .Nm
1087 will copy the partial letter to the file
1088 .Pa dead.letter
1089 in your home directory.
1090 Default is
1091 .Va save .
1092 .It Va searchheaders
1093 If this option is set, then a message-list specifier in the form
1094 .Dq Li / Ns Ar x Ns : Ns Ar y
1095 will expand to all messages containing the substring
1096 .Ar y
1097 in the header field
1098 .Ar x .
1099 The string search is case insensitive.
1100 If
1101 .Ar x
1102 is omitted, it will default to the
1103 .Dq Li Subject
1104 header field.
1105 The form
1106 .Dq Li /to: Ns Ar y
1107 is a special case, and will expand
1108 to all messages containing the substring
1109 .Ar y
1110 in the
1111 .Dq Li To ,
1112 .Dq Li Cc
1113 or
1114 .Dq Li Bcc
1115 header fields.
1116 The check for
1117 .Qq Li "to"
1118 is case sensitive, so that
1119 .Dq Li /To: Ns Ar y
1120 can be used to limit the search for
1121 .Ar y
1122 to just the
1123 .Dq Li To:
1124 field.
1125 Default is
1126 .Va nosearchheaders .
1127 .It Va toplines
1128 If defined, gives the number of lines of a message to be printed out
1129 with the
1130 .Ic top
1131 command; normally, the first five lines are printed.
1132 .It Va verbose
1133 Setting the option
1134 .Va verbose
1135 is the same as using the
1136 .Fl v
1137 flag on the command line.
1138 When
1139 .Nm
1140 runs in verbose mode,
1141 the actual delivery of messages is displayed on the user's
1142 terminal.
1143 Default is
1144 .Va noverbose .
1145 .El
1146 .Sh ENVIRONMENT
1147 .Bl -tag -width ".Ev REPLYTO"
1148 .It Ev DEAD
1149 Pathname of the file to save partial messages to in case of interrupts
1150 or delivery errors.
1151 Default is
1152 .Pa ~/dead.letter .
1153 .It Ev EDITOR
1154 Pathname of the text editor to use in the
1155 .Ic edit
1156 command and
1157 .Ic ~e
1158 escape.
1159 If not defined, then a default editor is used.
1160 .It Ev HOME
1161 Pathname of the user's home directory.
1162 .It Ev LISTER
1163 Pathname of the directory lister to use in the
1164 .Ic folders
1165 command.
1166 Default is
1167 .Pa /bin/ls .
1168 .It Ev MAIL
1169 Location of the user's mailbox.
1170 Default is
1171 .Pa /var/mail .
1172 .It Ev MAILRC
1173 Pathname of file containing initial
1174 .Nm
1175 commands.
1176 Default is
1177 .Pa ~/.mailrc .
1178 .It Ev MBOX
1179 The name of the mailbox file.
1180 It can be the name of a folder.
1181 The default is
1182 .Pa mbox
1183 in the user's home directory.
1184 .It Ev PAGER
1185 Pathname of the program to use in the
1186 .Ic more
1187 command or when
1188 .Va crt
1189 variable is set.
1190 The default paginator
1191 .Xr less 1
1192 is used if this option is not defined.
1193 .It Ev REPLYTO
1194 If set, will be used to initialize the Reply-To field for outgoing
1195 messages.
1196 .It Ev SHELL
1197 Pathname of the shell to use in the
1198 .Ic \&!
1199 command and the
1200 .Ic ~!
1201 escape.
1202 A default shell is used if this option is
1203 not defined.
1204 .It Ev TMPDIR
1205 Pathname of the directory used for creating temporary files.
1206 .It Ev VISUAL
1207 Pathname of the text editor to use in the
1208 .Ic visual
1209 command and
1210 .Ic ~v
1211 escape.
1212 .It Ev USER
1213 Login name of the user executing mail.
1214 .El
1215 .Sh FILES
1216 .Bl -tag -width ".Pa /usr/share/misc/mail.*help" -compact
1217 .It Pa /var/mail/*
1218 Post office.
1219 .It Pa ~/mbox
1220 User's old mail.
1221 .It Pa ~/.mailrc
1222 File giving initial
1223 .Nm
1224 commands.
1225 This can be overridden by setting the
1226 .Ev MAILRC
1227 environment variable.
1228 .It Pa /tmp/R*
1229 Temporary files.
1230 .It Pa /usr/share/misc/mail.*help
1231 Help files.
1232 .Pp
1233 .It Pa /usr/share/misc/mail.rc
1234 .It Pa /usr/local/etc/mail.rc
1235 .It Pa /etc/mail.rc
1236 System-wide initialization files.
1237 Each file will be sourced, in order,
1238 if it exists.
1239 .El
1240 .Sh SEE ALSO
1241 .Xr fmt 1 ,
1242 .Xr newaliases 1 ,
1243 .Xr vacation 1 ,
1244 .Xr aliases 5 ,
1245 .Xr sendmail 8
1246 .Sh HISTORY
1247 A
1248 .Nm
1249 command
1250 appeared in
1251 .At v1 .
1252 This man page is derived from
1253 .%T "The Mail Reference Manual"
1254 originally written by
1255 .An Kurt Shoens .
1256 .Sh BUGS
1257 There are some flags that are not documented here.
1258 Most are
1259 not useful to the general user.
1260 .Pp
1261 Usually,
1262 .Nm
1263 is just a link to
1264 .Nm Mail
1265 and
1266 .Nm mailx ,
1267 which can be confusing.
1268 .Pp
1269 The name of the
1270 .Ic alternates
1271 list is incorrect English (it should be
1272 .Dq alternatives ) ,
1273 but is retained for compatibility.