mail man page on Archlinux

Man page or keyword search:  
man Server   11224 pages
apropos Keyword Search (all sections)
Output format
Archlinux logo
[printable version]

MAIL(1)			  BSD General Commands Manual		       MAIL(1)

     Mail [v14.6.4] — send and receive Internet mail

     mail [-BDdEFintv~] [-A account] [-a attachment] [-b bcc-addr]
	  [-c cc-addr] [-O mta-option] [-q quote-file] [-r from-addr]
	  [-S variable[=value]] [-s subject] to-addr ...
     mail [-BDdEeHiNnRv~#] [-A account] [-L spec-list] [-S variable[=value]]
	  -f [file]
     mail [-BDdEeHiNnRv~#] [-A account] [-L spec-list] [-S variable[=value]]
	  [-u user]

     Mail is a mail processing system with a command syntax reminiscent of
     ed(1) with lines replaced by messages.  It is intended to provide the
     functionality of the POSIX mailx(1) command and offers (mostly optional)
     extensions for line editing, IDNA, MIME, S/MIME, SMTP and POP3 (and
     IMAP).  It is usable as a mail batch language.

     In the following list of supported command line options, -D, -d, -E, -i,
     -N and -v are implemented by means of setting the respective option, as
     via -S.

     -A account	 Executes an account command (see below) for account after the
		 startup files have been read.

     -a file	 Attach the given file to the message.	The same filename con‐
		 ventions as described in the section Commands apply.

     -B		 Make standard input and standard output line-buffered.

     -b address	 Send blind carbon copies to the given list of addresses.
		 Sending mail below goes into more detail on that.

     -c address	 Send carbon copies to the given list of addresses.

     -D		 [Optional] Set the disconnected variable.

     -d		 Set the debug variable, which enables debug messages and dis‐
		 ables message delivery.  Note that this is not a real `sand‐
		 box' mode.

     -E		 Set the skipemptybody variable and thus discard messages with
		 an empty message part body.  This is useful for sending mes‐
		 sages from scripts.

     -e		 Just check if mail is present in the system mailbox.  If yes,
		 return an exit status of zero, a non-zero value otherwise.

     -F		 Save the message to send in a file named after the local part
		 of the first recipient's address.

     -f [file]	 Read in the contents of the user's mbox (or the specified
		 file) for processing; when Mail is quit, it writes undeleted
		 messages back to this file.  The string file is interpreted
		 as described for the folder command below.  Note that file is
		 not a direct argument to the flag -f, but is instead taken
		 from the command line after option processing has been com‐

     -H		 Print a header summary of all messages and exit.  A config‐
		 urable summary view is available via the -L option.

     -i		 Set the ignore variable to ignore tty interrupt signals.

     -L spec-list
		 Print a header summary of only those messages that match the
		 given spec-list, then exit.  See the section Specifying
		 messages for the format of spec-list.	If the -H option has
		 been given in addition to -L, then printing of the header
		 summary is suppressed, and Mail will instead indicate via its
		 exit status wether spec-list matched any messages (`0') or
		 not (`1'); note that messages are forcefully suppressed,
		 then, and unless verbosity is explicitly enabled (e.g., by
		 using the -v option).

     -N		 Unset the header variable and thus inhibits the initial dis‐
		 play of message headers when reading mail or editing a mail

     -n		 Inhibits reading /etc/mail.rc upon startup.  This option
		 should be activated for Mail scripts that are invoked on more
		 than one machine, because the contents of that file may dif‐
		 fer between them.  (The same behaviour can be achieved by
		 setting the NAIL_NO_SYSTEM_RC environment variable.)

     -O mta-option
		 Pass the given option through to the mail-transfer-agent
		 (MTA).	 This option has no effect when mail is send via SMTP.
		 E.g., use `-O-h -Onumber' to specify the hop count for an old
		 sendmail(1).  Options set like that persist for an entire
		 (interactive) session.

     -q file	 Start the message with the contents of the specified file.
		 May be given in send mode only.

     -R		 Opens any folders read-only.

     -r address	 Sets the envelope sender address by passing an -r option to
		 the MTA when a message is send.  If a non-empty address argu‐
		 ment is given it'll be checked for validity and then fixated
		 to the given value, but otherwise the content of the variable
		 from will be used for that purpose – i.e., it'll be passed
		 through to the MTA via the -r option whenever a message is
		 send.	A valid non-empty value will also be set as if an
		 additional `-Sfrom=VALUE' option had been used and therefore
		 affect sending of messages via SMTP (as a consideration for

     -S variable[=value]
		 Sets the internal option variable and, in case of a value
		 option, assigns value to it.  Even though options set via -S
		 may be overwritten from within resource files, the command
		 line setting will be reestablished after all resources have
		 been loaded.

     -s subject	 Specify the subject on the command line (be careful to quote
		 subjects containing spaces).

     -t		 The message to be sent is expected to contain a message
		 header with `To:', `Cc:', or `Bcc:' fields giving its recipi‐
		 ents and `Subject:' giving the subject of the message.
		 Recipients and subject specified on the command line are

     -u user	 Read the system mailbox of user (appropriate privileges pre‐
		 sumed), and `assume to be' user in some aspects, e.g. in
		 respect to expansions of `%' etc.  Also see USER.

     -V		 Print Mail's version and exit.

     -v		 Sets the verbose option, which enables more verbose messages.

     -~		 Enable tilde escapes even if not in interactive mode.

     -#		 This sets multiple options to prepare Mail for working in
		 batch mode (most likely in non-interactive mode): dot,
		 emptystart, noheader, quiet, sendwait, as well as MBOX and
		 folder to /dev/null.  it also enables processing of tilde
		 escapes.  E.g., the following should send an email message to

		       printf 'm alias\n~s Subject\nBody\n.\nx\n' |
		       MAILRC=/dev/null s-nail -n -#

   Sending mail
     To send a message to one or more people, Mail can be invoked with argu‐
     ments which are the names of people to whom the mail will be sent.	 These
     names may be aliases, plain addresses or full address specifications
     including user names and comments, in which case care for proper quoting
     may be necessary.	If this manual refers to a list of addresses, then
     Mail expects a comma-separated list of such names.	 The section Recipient
     address specifications below explains the interpretation of names in more
     detail.  The user is then expected to type in his message, followed by a
     `control-D' at the beginning of a line.  The section Replying to or
     originating mail describes some features of Mail available to help when
     composing letters.

   Reading mail
     In normal usage Mail is given no arguments and checks the user's 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 print command, which can be abbreviated `p'.
     The commands `p+' and `p-' move forward to the next and backward to the
     previous message, respectively, and messages can be addressed directly by
     specifying their message number, as in `p 1'.

   Disposing of mail
     After examining a message the user can delete (`d') the message or reply
     (`r') to it.  Deletion causes the Mail program to forget about the mes‐
     sage.  This is not irreversible; one can undelete (`u') the message by
     giving its number, or the Mail session can be ended by giving the exit
     (`x') command.  Deleted messages will, however, usually disappear never
     to be seen again.

   Specifying messages
     Commands such as print and delete can be given a list of message numbers
     as arguments to apply to a number of messages at once.  Thus `delete 1 2'
     deletes messages 1 and 2, whereas `delete 1-5' will delete the messages 1
     through 5.	 In sorted or threaded mode (see the sort and thread com‐
     mands), `delete 1-5' will delete the messages that are located between
     (and including) messages 1 through 5 in the sorted/threaded order, as
     shown in the header summary.  The following special message names exist:

     :n	       All new messages.

     :o	       All old messages (any not in state read or new).

     :u	       All unread messages.

     :d	       All deleted messages (for the undelete command).

     :r	       All read messages.

     :f	       All `flagged' messages.

     :a	       All answered messages (cf. the markanswered variable).

     :t	       All messages marked as draft.

     :s	       [Optional] All messages classified as spam.

     .	       The current message.

     ;	       The message that was previously the current message.

     ,	       The parent message of the current message, that is the message
	       with the Message-ID given in the `In-Reply-To:' field or the
	       last entry of the `References:' field of the current message.

     -	       The next previous undeleted message, or the next previous
	       deleted message for the undelete command.  In sorted/threaded
	       mode, the next previous such message in the sorted/threaded

     +	       The next undeleted message, or the next deleted message for the
	       undelete command.  In sorted/threaded mode, the next such mes‐
	       sage in the sorted/threaded order.

     ^	       The first undeleted message, or the first deleted message for
	       the undelete command.  In sorted/threaded mode, the first such
	       message in the sorted/threaded order.

     $	       The last message.  In sorted/threaded mode, the last message in
	       the sorted/threaded order.

     &x	       In threaded mode, selects the message addressed with x, where x
	       is any other message specification, and all messages from the
	       thread that begins at it.  Otherwise it is identical to x.  If
	       x is omitted, the thread beginning with the current message is

     *	       All messages.

     `	       All messages that were included in the message list for the
	       previous command.

     /string   All messages that contain string in the subject field (case
	       ignored).  See also the searchheaders variable.	If string is
	       empty, the string from the previous specification of that type
	       is used again.

	       All messages that contain the given case-insensitive search
	       expression; if the [Optional] regular expression support is
	       available expr will be interpreted as one if any of the
	       `magic'al regular expression characters is seen.	 If the
	       optional @name-list part is missing, the search is restricted
	       to the subject field body, but otherwise name-list specifies a
	       comma-separated list of header fields to search, as in

		     '@to,from,cc@Someone i ought to know'

	       The special names `body' and `text' can be used to search in
	       message bodies – whereas the former searches only the body, the
	       latter form also performs a fulltext search in the header
	       fields.	In order to search for a string that includes a `@'
	       (commercial at) character the name-list is effectively non-
	       optional, but may be given as the empty string.

     address   All messages from address.  By default, this is a case-sensi‐
	       tive search for the complete email address.  If the allnet
	       variable is set, only the local part of the addresses is evalu‐
	       ated for the comparison.	 Otherwise if the showname variable is
	       set, a case-sensitive search for the complete real name of a
	       sender is performed.  The IMAP-style `(from address)' expres‐
	       sion can be used instead if substring matches are desired.

     [Optional] IMAP-style SEARCH expressions may also be used.	 This address‐
     ing mode is available with all types of folders; for folders not located
     on IMAP servers, or for servers unable to execute the SEARCH command,
     Mail will perform the search locally.  Strings must be enclosed by double
     quotes `"' in their entirety if they contain white space or parentheses;
     within the quotes, only backslash `\' is recognized as an escape charac‐
     ter.  All string searches are case-insensitive.  When the description
     indicates that the `envelope' representation of an address field is used,
     this means that the search string is checked against both a list con‐
     structed as

	   ("name" "source" "local-part" "domain-part")

     for each address, and the addresses without real names from the respec‐
     tive header field.	 These search expressions can be nested using paren‐
     theses, see below for examples.

	       All messages that satisfy the given criterion.

     (criterion1 criterion2 ... criterionN)
	       All messages that satisfy all of the given criteria.

     (or criterion1 criterion2)
	       All messages that satisfy either criterion1 or criterion2, or
	       both.  To connect more than two criteria using `or', (or) spec‐
	       ifications have to be nested using additional parentheses, as
	       with `(or a (or b c))', since `(or a b c)' really means `((a or
	       b) and c)'. For a simple `or' operation of independent criteria
	       on the lowest nesting level, it is possible to achieve similar
	       effects by using three separate criteria, as with `(a) (b)

     (not criterion)
	       All messages that do not satisfy criterion.

     (bcc "string")
	       All messages that contain string in the `envelope' representa‐
	       tion of the `Bcc:' field.

     (cc "string")
	       All messages that contain string in the `envelope' representa‐
	       tion of the `Cc:' field.

     (from "string")
	       All messages that contain string in the `envelope' representa‐
	       tion of the `From:' field.

     (subject "string")
	       All messages that contain string in the `Subject:' field.

     (to "string")
	       All messages that contain string in the `envelope' representa‐
	       tion of the `To:' field.

     (header name "string")
	       All messages that contain string in the specified Name: field.

     (body "string")
	       All messages that contain string in their body.

     (text "string")
	       All messages that contain string in their header or body.

     (larger size)
	       All messages that are larger than size (in bytes).

     (smaller size)
	       All messages that are smaller than size (in bytes).

     (before date)
	       All messages that were received before date, which must be in
	       the form d[d]-mon-yyyy, where `d' denotes the day of the month
	       as one or two digits, `mon' is the name of the month – one of
	       `Jan', `Feb', `Mar', `Apr', `May', `Jun', `Jul', `Aug', `Sep',
	       `Oct', `Nov', or `Dec', and `yyyy' is the year as four digits,
	       e.g., "28-Dec-2012".

     (on date)
	       All messages that were received on the specified date.

     (since date)
	       All messages that were received since the specified date.

     (sentbefore date)
	       All messages that were sent on the specified date.

     (senton date)
	       All messages that were sent on the specified date.

     (sentsince date)
	       All messages that were sent since the specified date.

     ()	       The same criterion as for the previous search.  This specifica‐
	       tion cannot be used as part of another criterion.  If the pre‐
	       vious command line contained more than one independent crite‐
	       rion then the last of those criteria is used.

   Replying to or originating mail
     The command reply can be used to set up a response to a message, sending
     it back to the person who it was from.  Text the user types in, up to an
     end-of-file, defines the contents of the message.	While the user is com‐
     posing a message Mail treats lines beginning with the character `~' spe‐
     cially.  For instance, typing `~m' (alone on a line) will place a copy of
     the current message into the response right shifting it by a tabstop
     (more about the indentprefix variable below).  Other escapes will set up
     subject fields, add and delete recipients to the message, attach files to
     it and allow the user to escape to an editor to revise the message or to
     a shell to run some commands.  (These options are given in the summary

   Ending a mail processing session
     The user can end a Mail session by issuing the quit (`q') command.	 Mes‐
     sages which have been examined go to the user's mbox file unless they
     have been deleted, in which case they are discarded.  Unexamined messages
     go back to the post office.  (Also see the -f option above.)  When com‐
     mand line history is tracked, an updated history file is written.	None
     of these actions is performed when the command exit (`x') is used instead
     of quit (`q').

   Personal and systemwide distribution lists
     It is possible to create personal distribution lists so that, for
     instance, the user can send mail to `cohorts' and have it go to a group
     of people.	 Such lists can be defined via the alias command by, e.g.,
     placing lines like

	   alias cohorts bill ozalp jkf mark kridle@ucbcory

     in the file ~/.mailrc in the user's home directory.  Using alias without
     arguments lists all the currently known aliases.

     Please note that this mechanism has nothing in common with the system
     wide aliases that may be used by the local MTA (mail-transfer-agent) and
     are often tracked in a file /etc/aliases (and documented in aliases(5)
     and sendmail(1)).	Personal aliases will be expanded by Mail before the
     message is sent.  They are a convenient alternative to specifying each
     addressee by itself.

   Recipient address specifications
     When an address is used to name a recipient (in `To:', `Cc:', or `Bcc:'),
     names of local mail folders and pipes to external commands may also be
     specified – the message text is then written to them.  The rules are: Any
     name which starts with a `|' (vertical bar) character specifies a pipe –
     the command string following the `|' is executed and the message is sent
     to its standard input; any other name which contains a `@' (at sign)
     character is treated as a mail address; any other name which starts with
     a `+' (plus sign) character specifies a folder name; any other name which
     contains a `/' (slash) character but no `!'  (exclamation mark) or `%'
     (percent sign) character before also specifies a folder name; what
     remains is treated as a mail address.  Compressed folders are handled as
     described for the folder command.

   Network mail (Internet / ARPA, UUCP, Berknet)
     See mailaddr(7) for a description of network addresses.  If support for
     IDNA (internationalized domain names for applications) has been compiled
     into Mail, then the domain name part of network addresses will be con‐
     verted via IDNA mechanisms as necessary, effectively treating it as a
     name in the ttycharset character set; see Character sets for the complete
     picture about character sets.

     Mail has a number of options which can be set in the ~/.mailrc file to
     alter its behavior; e.g., set askcc enables the askcc feature, and set
     idna-disable will disable the mentioned IDNA conversion even if support
     is available.  (These options are summarized below.)

   MIME types
     For any outgoing attachment Mail tries to determine the content type.  It
     does this by reading MIME type files whose lines have the following syn‐

	   type/subtype	  extension [extension ...]

     where `type/subtype' are strings describing the file contents, and
     `extension' is the part of a filename starting after the last dot.	 Any
     line not immediately beginning with an ASCII alphabetical character is
     ignored by Mail.  The variable mimetypes-load-control can be used to con‐
     trol the sources of MIME types, and the mimetypes command can be used to
     show the list of mime types known to Mail.	 If there is a match with the
     `extension' of the file to attach, the given `type/subtype' pair is used.
     Otherwise, or if the filename has no extension, the content types
     `text/plain' or `application/octet-stream' are used, dependent upon file
     content inspection.  Also see mime-allow-text-controls.

   Character sets
     Mail normally detects the character set of the terminal by using mecha‐
     nisms that are controlled by the `LC_CTYPE' locale setting, if such are
     supported; the variable ttycharset will be set to the detected terminal
     character set and will thus show up in the output of the command set.

     A user supplied ttycharset value is not overwritten by this detection
     mechanism; this feature must be used if the detection doesn't work prop‐
     erly, and it may be used to adjust the name of the locale character set.
     E.g., on BSD systems one may use a locale with the character set
     `ISO8859-1', which is not a valid name for this character set; to be on
     the safe side, one may set ttycharset to the correct name, `ISO-8859-1'.

     Note that changing the value doesn't mean much beside that, since several
     aspects of the real character set are implied by the locale environment
     of the system, and that stays unaffected by the content of an overwritten
     ttycharset variable.  (This is mostly an issue when interactively using
     Mail, though.  It is actually possible to send mail in a completely
     "faked" locale environment.)

     If no character set conversion capabilities have been compiled into Mail
     (i.e., no iconv(3) library has been found), then ttycharset will be the
     only supported character set, it is simply assumed that it can be used to
     exchange 8 bit messages, and the rest of this section does not apply; it
     may however still be necessary to explicitly set it if automatic detec‐
     tion fails, since in that case it defaults to `ISO-8859-1'.

     When reading messages, their text is converted into ttycharset as neces‐
     sary in order to display them on the users terminal.  Unprintable charac‐
     ters and illegal byte sequences are detected and replaced by proper sub‐
     stitution characters (unless the variable print-all-chars was set once
     Mail was started).

     When sending messages all their parts and attachments are classified.
     Whereas no character set conversion is performed on those parts which
     appear to be binary data, the character set being used must be declared
     within the MIME header of an outgoing text part if it contains characters
     that do not conform to the set of characters that are allowed by the
     email standards.  Permissible values for character sets can be declared
     using the sendcharsets variable, and charset-8bit, which defines a catch-
     all last-resort fallback character set that is implicitly appended to the
     list of character-sets in sendcharsets.

     All the specified character sets are tried in order unless the conversion
     of the part or attachment succeeds.  If none of the tried (8 bit) charac‐
     ter sets is capable to represent the content of the part or attachment,
     then the message will not be sent and its text will be saved to DEAD.  In
     general, if the message `Cannot convert from a to b' appears, either some
     characters are not appropriate for the currently selected (terminal)
     character set, or the needed conversion is not supported by the system.
     In the first case, it is necessary to set an appropriate `LC_CTYPE'
     locale and/or the variable ttycharset.

     The best results are usually achieved when Mail is run in a UTF-8 locale
     on a UTF-8 capable terminal, in which case the full Unicode spectrum of
     characters is available.  In this setup characters from various countries
     can be displayed, while it is still possible to use more simple character
     sets for sending to retain maximum compatibility with older mail clients.

   Command line editor
     [Optional] Mail can be configured to support a command line editor and
     command history lists which are saved in between sessions.	 One may link
     against fully-fledged external libraries (readline(3), editline(3)) or
     use the Mail command line editor instead, which should work in all envi‐
     ronments which comply to ISO C (ISO/IEC 9899:1990/Amendment 1:1995).
     When an external library is used, interactive behaviour of Mail relies on
     that library and may not correspond one-to-one to what is described in
     this manual.

     Regardless of the actually used command line editor history entries will
     be created for lines entered in command mode only, and creation of such
     an entry can be forcefully suppressed by starting the line with a space
     character.	 Note that history handling is by itself an optional feature
     and may therefore not be available.  For more information see the docu‐
     mentation of the options emptystart, line-editor-disable, NAIL_HISTFILE

     The builtin Mail command line editor supports the following operations;
     the notation `^-character' stands for the combination of the `control'
     key plus the mentioned character, e.g., `^A' means "hold control key
     while adding an A key on top of it":

     ^A	  Go to the start of the line.

     ^B	  Move the cursor backward one character.

     ^D	  Forward delete the character under the cursor; quits Mail if used on
	  the empty line, unless the ignoreeof option is set.

     ^E	  Go to the end of the line.

     ^F	  Move the cursor forward one character.

     ^G	  Cancel current operation, full reset.	 If there is an active history
	  search or tabulator expansion then this command will first reset
	  that, reverting to the former line content; thus a second reset is
	  needed for a full reset in this case.	 In all cases Mail will reset
	  a possibly used multibyte character input state machine.

     ^H	  The same as `backspace': backward delete one character.

     ^I	  [Optional] The same as `horizontal tabulator': try to expand the
	  "word" before the cursor.  Here "expansion" refers to the Mail
	  expansion, as documented for folder, and thus includes shell word
	  expansion (as a last step).  I.e., this is Mail "expansion", not
	  what one usually expects from "tab-completion".

     ^J	  The same as `ENTER': complete this line of input.

     ^K	  Delete all characters from the cursor to the end of the line.

     ^L	  Repaint the line.

     ^N	  [Optional] Go to the next history entry.

     ^P	  [Optional] Go to the previous history entry.

     ^R	  [Optional] Complete the current line from (the remaining older) his‐
	  tory entries.

     ^U	  The same as `^A' followed by `^K'.

     ^W	  Delete the characters from the one preceding the cursor to the pre‐
	  ceding word boundary.

     ^X	  Move the cursor forward one word boundary.

     ^Y	  Move the cursor backward one word boundary.

     If problems with commands that are based upon rightwise movement are
     encountered, adjustments of the option line-editor-cursor-right may solve
     the problem, as documented for it.

   Coloured message display
     [Optional] Mail can be configured to support coloured message display.
     Colours are used only when the TERM environment variable is set and the
     terminal type can be found in colour-terms.  Beyond that, if a command
     requires to output through the PAGER (also see crt) then the used PAGER
     must be mentioned in the variable colour-pagers, otherwise no colours
     will be used regardless of the actual terminal type.

     "Coloured message display" can be configured through font attributes
     (`ft=' – `bold', `invers' and `underline'), foreground (`fg=') and back‐
     ground (`bg=') colours (`black', `blue', `green', `red', `brown',
     `magenta', `cyan' and `white').  Multiple specifications can be joined in
     a comma separated list, as in

	   set colour-msginfo="ft=bold,fg=magenta,bg=cyan"

     Options to be set are colour-msginfo, colour-partinfo, colour-from_,
     colour-header and colour-uheader, as well as colour-user-headers, which
     is a list of headers to be colourized via colour-uheader instead of the
     default colour-header.  To forcefully disable colours, set

     Each command is typed on a line by itself, and may take arguments follow‐
     ing the command word.  The command need not be typed in its entirety –
     the first command which matches the typed prefix is used.	(The command
     list prints a sorted list of available commands, and the command ?, when
     given an argument, will show a documentation string for the expansion, as
     in `?unc'; documentation strings are however [Optional].)

     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, Mail types `no applicable messages' and aborts the command.  If
     the command begins with a `#' (number sign) character, the line is

     The arguments to commands can be quoted, using the following methods:

	   ·   An argument can be enclosed between paired double-quotes
	       `"argument"' or single-quotes `'argument''; any white space,
	       shell word expansion, or backslash characters (except as
	       described next) within the quotes are treated literally as part
	       of the argument.	 A double-quote will be treated literally
	       within single-quotes and vice versa.  Inside such a quoted
	       string the actually used quote character can be used nonethe‐
	       less by escaping it with a backslash `\', as in `"y\"ou"'.

	   ·   An argument that is not enclosed in quotes, as above, can usu‐
	       ally still contain space characters if those spaces are back‐

	   ·   A backslash outside of the enclosing quotes is discarded and
	       the following character is treated literally as part of the

	   ·   An unquoted backslash at the end of a command line is discarded
	       and the next line continues the command.

     Filenames, where expected, are subsequently subjected to the following
     transformations, in sequence:

	   ·   If the filename begins with an unquoted plus sign, and the
	       folder variable is defined, the plus sign will be replaced by
	       the value of the folder variable followed by a slash.  If the
	       folder variable is unset or is set to null, the filename will
	       be unchanged.

	   ·   Shell word expansions are applied to the filename.  If more
	       than a single pathname results from this expansion and the com‐
	       mand is expecting one file, an error results.

     The following commands are provided:

     ~	      Interprets the remainder of the word as a macro name and passes
	      it through to the call command; e.g., `~mymacro' is a shorter
	      synonym for `call mymacro'.

     -	      Print out the preceding message.	If given a numeric argument n,
	      goes to the n'th previous message and prints it.

     ?	      Prints a brief summary of commands.  [Optional] Given an argu‐
	      ment a synopsis for the command in question is printed instead.

     !	      Executes the shell (see sh(1) and csh(1)) command which follows.

     |	      A synonym for the pipe command.

     account  (ac) Creates, selects or lists an email account.	An account is
	      formed by a group of commands, primarily of those to set vari‐
	      ables.  With two arguments, of which the second is a `{', the
	      first argument gives an account name, and the following lines
	      create a group of commands for that account until a line con‐
	      taining a single `}' appears.  With one argument the previously
	      created group of commands for the account name is executed, and
	      a folder command is executed for the system mailbox or inbox of
	      that account.  Without arguments the list of accounts and their
	      contents are printed.  As an example,

		       account myisp {
			  set folder=imaps://mylogin@imap.myisp.example
			  set record=+Sent
			  set from="myname@myisp.example (My Name)"
			  set smtp=smtp.myisp.example

	      creates an account named `myisp' which can later be selected by
	      specifying `account myisp'.  The special account `null' (case-
	      insensitive) always exists.  Accounts can be deleted via

     alias    (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.  unalias
	      can be used to delete aliases.

	      (alt) The alternates command is useful if the user has accounts
	      on several machines.  It can be used to inform Mail that the
	      listed addresses all belong to the invoking user.	 When replying
	      to messages Mail will not send a copy of the message to any of
	      the addresses listed on the alternates list.  If the alternates
	      command is given with no argument, the current set of alternate
	      names is displayed.

	      (ans) Takes a message list and marks each message as having been
	      answered.	 This mark has no technical meaning in the mail sys‐
	      tem; it just causes messages to be marked in the header summary,
	      and makes them specially addressable.

     cache    [Optional] Only applicable to cached IMAP mailboxes; takes a
	      message list and reads the specified messages into the IMAP

     call     Calls a macro (see the define command).

     cd	      Same as chdir.

	      [Optional] Only applicable to S/MIME signed messages.  Takes a
	      message list and a file name and saves the certificates con‐
	      tained within the message signatures to the named file in both
	      human-readable and PEM format.  The certificates can later be
	      used to send encrypted messages to the respective message
	      senders by setting smime-encrypt-user@host variables.

     chdir    (ch) Changes the user's working directory to the specified one,
	      or to the user's login directory, if none was given.

	      (coll) Only applicable to threaded mode.	Takes a message list
	      and makes all replies to these messages invisible in header sum‐
	      maries, unless they are in state `new'.

     connect  [Optional] (conn) If operating in disconnected mode on an IMAP
	      mailbox, switch to online mode and connect to the mail server
	      while retaining the mailbox status.  See the description of the
	      disconnected variable for more information.

     copy     (c) The copy command does the same thing that save does except
	      that it does not mark the given messages for deletion when the
	      user quits.  Compressed files and IMAP mailboxes are handled as
	      described for the folder command.

     Copy     (C) Similar to copy, but saves the messages in a file named
	      after the local part of the sender address of the first message.

     cwd      Print the current working directory.

     decrypt  [Optional] (dec) For unencrypted messages, this command is iden‐
	      tical to copy.  Encrypted messages are first decrypted, if pos‐
	      sible, and then copied.

     Decrypt  P (Dec) Similar to decrypt, but saves the messages in a file
	      named after the local part of the sender address of the first

     define   (def) Without arguments the current list of macros, including
	      their content, is printed.  If arguments are given this command
	      defines a macro.	A macro definition is a sequence of commands
	      in the following form:

		       define name {

	      A defined macro can be explicitly invoked using call or ~, or it
	      can be implicitly invoked by setting the folder-hook or
	      folder-hook-fullname variables.  Macros can be deleted via

     delete   (d) Takes a list of messages as argument and marks them all as
	      deleted.	Deleted messages will not be saved in `mbox', nor will
	      they be available for most other commands.

     discard  Same as ignore.

	      [Optional] (disco) If operating in online mode on an IMAP mail‐
	      box, switch to disconnected mode while retaining the mailbox
	      status.  See the description of the disconnected variable for
	      more.  A list of messages may optionally be given as argument;
	      the respective messages are then read into the cache before the
	      connection is closed.  Thus `disco *' makes the entire mailbox
	      available for disconnected use.

     dp or dt
	      Deletes the current message and prints the next message.	If
	      there is no next message, Mail says `at EOF'.

     draft    Takes a message list and marks each given message as a draft.
	      This mark has no technical meaning in the mail system; it just
	      causes messages to be marked in the header summary, and makes
	      them specially addressable.

     echo     Echoes its arguments, resolving special names as documented for
	      the command folder.  The escape sequences `\a', `\b', `\c',
	      `\f', `\n', `\r', `\t', `\v', `\\', and `\0octal-num' are inter‐
	      preted just as they are by printf(1) (proper quoting provided).

     edit     (e) Point the text editor at each message from the given list in
	      turn.  Modified contents are discarded unless the
	      writebackedited variable is set.

     else     Marks the end of the then-part of an if statement and the begin‐
	      ning of the part to take effect if the condition of the if
	      statement is false.

     endif    Marks the end of an if statement.

     exit     (ex or x) Effects an immediate return to the Shell without modi‐
	      fying the user's system mailbox, his `mbox' file, or his edit
	      file in -f, as well as a possibly tracked command line editor
	      history file.

	      Print the list of features that have been compiled into Mail.

     file     (fi) The same as folder.

     flag     (fl) Takes a message list and marks the messages as `flagged'
	      for urgent/special attention.  This mark has no technical mean‐
	      ing in the mail system; it just causes messages to be high‐
	      lighted in the header summary, and makes them specially address‐

     folder   (fold) The folder command switches to a new mail file or folder.
	      With no arguments, it tells the user which file he is currently
	      reading.	If an argument is given, it will write out changes
	      (such as deletions) the user has made in the current file and
	      read in the new file.  Some special conventions are recognized
	      for the name argument:

		    #		(number sign) means the previous file,

		    %		(percent sign) means the invoking user's sys‐
				tem mailbox (or the value of folder for IMAP

		    %user	means the system mailbox of `user' (and never
				the value of folder, regardless of its actual

		    &		(ampersand) means the invoking user's `mbox'
				file (see MBOX) and

		    +file	means a `file' in the folder directory.

		    %:filespec	expands to the same value as `filespec', but
				the file is handled as a system mailbox by,
				e.g., the mbox and save commands.

	      If the name matches one of the strings defined with the command
	      shortcut, it is replaced by its long form and expanded.  If the
	      name ends with `.gz', `.bz2' or `.xz' it is treated as being
	      compressed with gzip(1), bzip2(1) or xz(1), respectively.	 If
	      `name' refers to a directory with the subdirectories `tmp',
	      `new', and `cur', then it is treated as a folder in `maildir'
	      format.  A name of the form


	      is taken as an Internet mailbox specification.  The (optionally)
	      supported protocols are `imap' (IMAP v4r1), `imaps' (IMAP with
	      SSL/TLS encrypted transport), `pop3' (POP3) and `pop3s' (POP3
	      with SSL/TLS encrypted transport).  If `user' contains special
	      characters, in particular `/' or `%', they must be escaped in
	      URL notation, as `%2F' or `%25'.	The optional `file' part
	      applies to IMAP only; if it is omitted, the default `INBOX' is

	      If Mail is connected to an IMAP server, a name of the form
	      `@mailbox' refers to the `mailbox' on that server, but otherwise
	      a `@' prefix has no special meaning.

     folders  With no arguments, list the names of the folders in the folder
	      directory.  With an existing folder as an argument, lists the
	      names of folders below the named folder; e.g. the command `fold‐
	      ers @' lists the folders on the base level of the current IMAP
	      server.  See also the variable imap-list-depth.

	      (F) Similar to Respond, but saves the message in a file named
	      after the local part of the first recipient's address.

	      (fo) Similar to respond, but saves the message in a file named
	      after the local part of the first recipient's address.

	      Similar to followup, but responds to all recipients regardless
	      of the flipr and Replyall variables.

	      Similar to Followup, but responds to the sender only regardless
	      of the flipr and Replyall variables.

     forward  (fwd) Takes a message and the address of a recipient and for‐
	      wards the message to him.	 The text of the original message is
	      included in the new one, with the value of the fwdheading vari‐
	      able printed before.  The fwdignore and fwdretain commands spec‐
	      ify which header fields are included in the new message.	Only
	      the first part of a multipart message is included unless the
	      forward-as-attachment option is set.

     Forward  (Fwd) Similar to forward, but saves the message in a file named
	      after the local part of the recipient's address.

     from     (f) Takes a list of messages and prints their message headers,
	      piped through the pager if the output does not fit on the

	      Specifies which header fields are to be ignored with the command
	      forward.	This command has no effect when the
	      forward-as-attachment option is set.

	      Specifies which header fields are to be retained with the com‐
	      mand forward.  fwdretain overrides fwdignore.  This command has
	      no effect when the forward-as-attachment option is set.

     ghost    Without arguments it lists all currently defined command
	      aliases, so-called ghosts.  With two arguments it defines a new
	      command alias: the first argument is the name under which the
	      second should be accessible.  The content of the second argument
	      can be just about anything.  A ghost can be used everywhere a
	      normal command can be used, but always takes precedence; any
	      arguments that are given to the command alias are joined onto
	      the alias content, and the resulting string forms the command
	      line that is, in effect, executed.  Also see unghost.

		    ? ghost ls '!ls -latro'
		    ? ls /usr/local

     headers  (h) Lists the current range of headers, which is an 18-message
	      group.  If a `+' argument is given the next 18-message group is
	      printed, likewise the previous is printed if the argument was

     help     A synonym for `?'.

     history  [Optional] Either show or clear the list of history entries; a
	      decimal NUMBER argument selects and shows the respective history
	      entry – press `ENTER' to accept it, and the history entry will
	      become the new history top.  The default mode if no arguments
	      are given is show.

     hold     (ho, also preserve) Takes a message list and marks each message
	      therein to be saved in the user's system mailbox instead of in
	      `mbox'.  Does not override the delete command.  Mail deviates
	      from the POSIX standard with this command, as a next command
	      issued after hold will display the following message, not the
	      current one.

     if	      Commands in Mail's startup files can be executed conditionally
	      by testing conditions via the nestable command `if', as in:

		       if receive
			  commands ...
			  commands ...

	      Note that the only allowed conditions are `[Rr]eceive',
	      `[Ss]end', `[Tt]erm' (execute if standard input is a tty), as
	      well as `0' (never execute) and `1' (always execute).  In addi‐
	      tion it is possible to conditionalize upon wether an option is
	      set, or set to a specific value, by using the `$' conditional
	      trigger, e.g.:

		       if $debug
			  commands ...
		       if $encoding == "UTF-8"
			  commands ...
		       if $encoding != "UTF-8"
			  commands ...

	      The first form simply checks wether an option is set, the other
	      two also perform value content comparison (equality and non-
	      equality, respectively); an unset value is treated as the empty
	      string, then.

     ignore   Add the list of header fields named to the ignored list.	Header
	      fields in the ignore list are not printed on the terminal when a
	      message is printed.  This command is very handy for suppression
	      of certain machine-generated header fields.  The Type and Print
	      commands can be used to print a message in its entirety, includ‐
	      ing ignored fields.  It lists the current set of ignored fields
	      if no arguments were given.

     imap     [Optional] Sends command strings directly to the current IMAP
	      server.  Mail operates always in IMAP `selected state' on the
	      current mailbox; commands that change this will produce undesir‐
	      able results and should be avoided.  Useful IMAP commands are:

		    create	   Takes the name of an IMAP mailbox as an
				   argument and creates it.

		    getquotaroot   (RFC 2087) Takes the name of an IMAP mail‐
				   box as an argument and prints the quotas
				   that apply to the mailbox.  Not all IMAP
				   servers support this command.

		    namespace	   (RFC 2342) Takes no arguments and prints
				   the Personal Namespaces, the Other User's
				   Namespaces and the Shared Namespaces.  Each
				   namespace type is printed in parentheses;
				   if there are multiple namespaces of the
				   same type, inner parentheses separate them.
				   For each namespace a prefix and a hierarchy
				   separator is listed.	 Not all IMAP servers
				   support this command.

     inc      Same as newmail.

     list     Prints the names of all available commands, alphabetically

	      Can only be used inside of a macro definition block introduced
	      by account or define, and is interpreted as a boolean (value `0'
	      means false, everything else true).  Any option that had been
	      set while `localopts' was in effect will be reverted to its for‐
	      mer value once the block is left / the `account' is switched.

		    define temporary_settings {
			    set global_option1
			    localopts 1
			    set local_option1
			    set local_option2
			    localopts 0
			    set global_option2

	      Note that these options stack upon each other, i.e., if macro1
	      sets `localopts' and calls macro2, which explicitly resets
	      `localopts', then any values set within macro2 will still be
	      cleaned up by macro1.

     Mail     (M) Similar to mail, but saves the message in a file named after
	      the local part of the first recipient's address.

     mail     (m) Takes a (list of) recipient address(es) as (an) argument(s),
	      or asks on standard input if none were given; then collects the
	      remaining mail content and sends it out.

     mbox     The given message list is to be sent to `mbox' when Mail is
	      quit.  This is the default action unless the hold option is set.
	      Mail deviates from the POSIX standard with this command, as a
	      next command issued after mbox will display the following mes‐
	      sage, not the current one.

	      Either (show or) clear the mime.types(5) cache.  In the former
	      case all sources are loaded first as necessary.  The
	      mimetypes-load-control option can be used to fine-tune which
	      sources are loaded.

     move     (mv) Acts like copy but marks the messages for deletion if they
	      were transferred successfully.

     more     Takes a message list and invokes the PAGER on that list, print‐
	      ing a form-feed (`\f') in between messages.

     More     Like more, but also prints ignored header fields and all MIME

     Move     (Mv) Similar to move, but moves the messages to a file named
	      after the local part of the sender address of the first message.

     newmail  Checks for new mail in the current folder without committing any
	      changes before.  If new mail is present, a message is printed.
	      If the header variable is set, the headers of each new message
	      are also printed.

     next     (n) (like `+' or `ENTER') Goes to the next message in sequence
	      and types it.  With an argument list, types the next matching

     New      Same as unread.

     new      Same as unread.

     online   Same as connect.

     noop     If the current folder is located on an IMAP or POP3 server, a
	      `NOOP' command is sent.  Otherwise, no operation is performed.

     Pipe     (Pi) Like pipe but also pipes ignored header fields and all
	      parts of MIME `multipart/alternative' messages.

     pipe     (pi) Takes a message list and a shell command and pipes the mes‐
	      sages through the command.  Without an argument the current mes‐
	      sage is piped through the command given by the cmd variable.  If
	      the page variable is set, every message is followed by a form‐
	      feed character.

	      (pre) A synonym for hold.

     Print    (P) Like print but also prints out ignored header fields and all
	      parts of MIME `multipart/alternative' messages.  See also print,
	      ignore and retain.

     print    (p) Takes a message list and types out each message on the
	      user's terminal.	If the message is a MIME multipart message,
	      all parts with a content type of `text' or `message' are shown,
	      the other are hidden except for their headers.  Messages are
	      decrypted and converted to the terminal character set if neces‐

     quit     (q) Terminates the session, saving all undeleted, unsaved mes‐
	      sages in the current `mbox', preserving all messages marked with
	      hold or 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 `You have new
	      mail' is given.  If given while editing a mailbox file with the
	      command line flag -f, 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 exit command.

	      (red) Same as resend.

	      (Red) Same as Resend.

     remove   (rem) Removes the named folders.	The user is asked for confir‐
	      mation in interactive mode.

     rename   (ren) Takes the name of an existing folder and the name for the
	      new folder and renames the first to the second one.  Both fold‐
	      ers must be of the same type and must be located on the current
	      server for IMAP.

     Reply    (R) Reply to originator.	Does not reply to other recipients of
	      the original message.

     reply    (r) Takes a message list and sends mail to the sender and all
	      recipients of the specified messages.  The default message must
	      not be deleted.

	      Similar to reply, but responds to all recipients regardless of
	      the flipr and Replyall variables.

	      Similar to Reply, but responds to the sender only regardless of
	      the flipr and Replyall variables.

     Resend   Like resend, but does not add any header lines.  This is not a
	      way to hide the sender's identity, but useful for sending a mes‐
	      sage again to the same recipients.

     resend   Takes a list of messages and a user name and sends each message
	      to the named user.  `Resent-From:' and related header fields are
	      prepended to the new copy of the message.

     Respond  Same as Reply.

     respond  Same as reply.

	      Same as replyall.

	      Same as replysender.

     retain   Add the list of header fields named to the retained list.	 Only
	      the header fields in the retain list are shown on the terminal
	      when a message is printed, all other header fields are sup‐
	      pressed.	The Type and Print commands can be used to print a
	      message in its entirety.	The current set of retained fields is
	      shown if retain is used without arguments.

     Save     (S) Similar to save, but saves the messages in a file named
	      after the local part of the sender of the first message instead
	      of taking a filename argument.

     save     (s) Takes a message list and a filename and appends each message
	      in turn to the end of the file.  If no filename is given, the
	      `mbox' file is used.  The filename in quotes, followed by the
	      line count and character count is echoed on the user's terminal.
	      If editing a system mailbox the messages are marked for dele‐
	      tion.  Compressed files and IMAP mailboxes are handled as
	      described for the -f command line option above.

	      Same as saveignore.

	      Is to save what ignore is to print and type.  Header fields thus
	      marked are filtered out when saving a message by save or when
	      automatically saving to `mbox'.  This command should only be
	      applied to header fields that do not contain information needed
	      to decode the message, as MIME content fields do.	 If saving
	      messages on an IMAP account ignoring fields makes it impossible
	      to copy the data directly on the server, thus operation usually
	      becomes much slower.

	      Is to save what retain is to print and type.  Header fields thus
	      marked are the only ones saved with a message when saving by
	      save or when automatically saving to `mbox'.  saveretain over‐
	      rides saveignore.	 The use of this command is strongly discour‐
	      aged since it may strip header fields that are needed to decode
	      the message correctly.

     set      (se) With no arguments, prints all variable values.  Otherwise,
	      sets an option.  Arguments are of the form `option=value' (no
	      space before or after `='), or plain `option' if there is no
	      value.  Quotation marks may be placed around any part of the
	      assignment statement to quote blanks or tabs, e.g.,

		    set indentprefix="->"

	      If an argument begins with `no', as in `set nosave', the effect
	      is the same as invoking the unset command with the remaining
	      part of the variable (`unset save').

     seen     Takes a message list and marks all messages as having been read.

     shell    (sh) Invokes an interactive version of the shell.

	      Defines a shortcut name and its string for expansion, as
	      described for the folder command.	 If used without arguments the
	      currently defined shortcuts are printed.

     show     (Sh) Like print, but performs neither MIME decoding nor decryp‐
	      tion so that the raw message text is shown.

     size     Print the size in characters of each message of the given mes‐

     sort     Create a sorted representation of the current folder, and change
	      the next command and the addressing modes such that they refer
	      to messages in the sorted order.	Message numbers are the same
	      as in regular mode.  If the header variable is set, a header
	      summary in the new order is also printed.	 Possible sorting cri‐
	      teria are:

		    date     Sort the messages by their `Date:' field, that is
			     by the time they were sent.

		    from     Sort messages by the value of their `From:'
			     field, that is by the address of the sender.  If
			     the showname variable is set, the sender's real
			     name (if any) is used.

		    size     Sort the messages by their size.

		    spam     [Optional] Sort the message by their spam score,
			     as has been classified via the command spamrate.

		    status   Sort the messages by their message status (new,
			     read, old, etc.).

		    subject  Sort the messages by their subject.

		    thread   Create a threaded order, as with the command

		    to	     Sort messages by the value of their `To:' field,
			     that is by the address of the recipient.  If the
			     showname variable is set, the recipient's real
			     name (if any) is used.

	      If no argument is given, the current sorting criterion is

     source   The source command reads commands from a file.

	      [Optional] Takes a list of messages and clears their `is-spam'

	      [Optional] Takes a list of messages and forces the spam detector
	      to forget it has ever used them to train its Bayesian filter,
	      wether as `ham' or `spam'.

     spamham  [Optional] Takes a list of messages and teaches them to the spam
	      detector as being `ham'.	This also clears the `is-spam' flag of
	      the messages in question.

	      [Optional] Takes a list of messages and rates them using the
	      configured spam detector, setting their `is-spam' flag as appro‐
	      priate.  Note that the messages are not modified, and due to
	      that the rating will get lost once the mailbox is left.  Refer
	      to the manual section Handling spam for the complete picture of
	      spam handling in Mail.

     spamset  [Optional] Takes a list of messages and sets their `is-spam'

	      [Optional] Takes a list of messages and teaches them to the spam
	      detector as being `spam'.	 This also sets the `is-spam' flag of
	      the messages in question.

     thread   (th) Create a threaded representation of the current folder,
	      i.e. indent messages that are replies to other messages in the
	      header display and change the next command and the addressing
	      modes such that they refer to messages in the threaded order.
	      Message numbers are the same as in unthreaded mode.  If the
	      header variable is set, a header summary in threaded order is
	      also printed.

     top      Takes a message list and prints the top few lines of each.  The
	      number of lines printed is controlled by the variable toplines
	      and defaults to five.

     touch    Takes a message list and marks the messages for saving in
	      `mbox'.  Mail deviates from the POSIX standard with this com‐
	      mand, as a next command issued after `mbox' will display the
	      following message instead of the current one.

     Type     (T) Identical to the Print command.

     type     (t) A synonym for print.

	      Delete all given accounts.  An error message is printed if a
	      given account is not defined.  Attempts to delete the currently
	      active account are rejected.

     unalias  Takes a list of names defined by alias commands and discards the
	      remembered groups of users.

	      Takes a message list and marks each message as not having been

	      (unc) Only applicable to threaded mode.  Takes a message list
	      and makes the message and all replies to it visible in header
	      summaries again.	When a message becomes the current message, it
	      is automatically made visible.  Also when a message with col‐
	      lapsed replies is printed, all of these are automatically uncol‐

	      Undefine all given macros.  An error message is printed if a
	      given macro is not defined.

	      (u) Takes a message list and marks each message as not being

     undraft  Takes a message list and undrafts each message.

     unflag   Takes a message list and marks each message as not being

	      Removes the header field names from the list of ignored fields
	      for the forward command.

	      Removes the header field names from the list of retained fields
	      for the forward command.

     unghost  Remove an existing command ghost.

	      Removes the header field names from the list of ignored fields.

     Unread   Same as unread.

     unread   (U) Takes a message list and marks each message as not having
	      been read.

	      Removes the header field names from the list of retained fields.

	      Removes the header field names from the list of ignored fields
	      for saving.

	      Removes the header field names from the list of retained fields
	      for saving.

     unset    Takes a list of option names and discards their remembered val‐
	      ues; the inverse of set.

	      Deletes the shortcut names given as arguments.

     unsort   Disable sorted or threaded mode (see the sort and thread com‐
	      mands), return to normal message order and, if the header vari‐
	      able is set, print a header summary.

	      (unth) Same as unsort.

     varshow  Show information about all given options.

     verify   [Optional] (verif) Takes a message list and verifies each mes‐
	      sage.  If a message is not an S/MIME signed message, verifica‐
	      tion will fail for it.  The verification process checks if the
	      message was signed using a valid certificate, if the message
	      sender's email address matches one of those contained within the
	      certificate, and if the message content has been altered.

     visual   (v) Takes a message list and invokes the display editor on each
	      message.	Modified contents are discarded unless the
	      writebackedited variable is set.

     write    (w) For conventional messages the body without all headers is
	      written.	The output is decrypted and converted to its native
	      format as necessary.  If the output file exists, the text is
	      appended.	 If a message is in MIME multipart format its first
	      part is written to the specified file as for conventional mes‐
	      sages, and the user is asked for a filename to save each other
	      part.  For convience saving of each part may be skipped by giv‐
	      ing an empty value; the same result can also be achieved by
	      writing it to /dev/null.	For the second and subsequent parts a
	      leading `|' character causes the part to be piped to the remain‐
	      der of the user input interpreted as a shell command; otherwise
	      the user input is expanded as usually for folders, e.g., tilde
	      expansion is performed.  In non-interactive mode, only the parts
	      of the multipart message that have a filename given in the part
	      header are written, the others are discarded.  The original mes‐
	      sage is never marked for deletion in the originating mail
	      folder.  For attachments, the contents of the destination file
	      are overwritten if the file previously existed.  No special han‐
	      dling of compressed files is performed.

     xit      (x) A synonym for exit.

     z	      Mail presents message headers in windowfuls as described under
	      the headers command.  This command scrolls to the next window of
	      messages.	 If an argument is given, it specifies the window to
	      use.  A number prefixed by `+' or `-' indicates that the window
	      is calculated in relation to the current position.  A number
	      without a prefix specifies an absolute window number, and a `$'
	      lets Mail scroll to the last window of messages.

     Z	      Similar to z, but scrolls to the next or previous window that
	      contains at least one new or `flagged' message.

   Tilde escapes
     Here is a summary of the tilde escapes, which are used to perform special
     functions when composing messages.	 Tilde escapes are only recognized at
     the beginning of lines.  The name `tilde escape' is somewhat of a mis‐
     nomer since the actual escape character can be set by the option escape.

     ~~ string	  Insert the string of text in the message prefaced by a sin‐
		  gle `~'.  (If the escape character has been changed, that
		  character must be doubled in order to send it at the begin‐
		  ning of a line.)

     ~! command	  Execute the indicated shell command, then return to the mes‐

     ~.		  Same effect as typing the end-of-file character.

     ~: Mail-command or ~_ Mail-command
		  Execute the given Mail command.  Not all commands, however,
		  are allowed.

     ~?		  Write a summary of command escapes.

     ~< filename  Identical to ~r.

     ~<! command  command is executed using the shell.	Its standard output is
		  inserted into the message.

     ~@ [filename...]
		  With no arguments, edit the attachment list interactively.
		  If an attachment's file name is left empty, that attachment
		  is deleted from the list.  When the end of the attachment
		  list is reached, Mail will ask for further attachments until
		  an empty name is given.  If a given file name solely con‐
		  sists of the number sign `#' followed by a valid message
		  number of the currently active mailbox, the given message is
		  attached as a MIME `message/rfc822' and the rest of this
		  section does not apply.

		  If character set conversion has been compiled into Mail,
		  then this mode gives the user the option to specify input
		  and output character sets, unless the file extension indi‐
		  cates binary content, in which case Mail asks wether this
		  step shall be skipped for the attachment in question.	 If
		  not skipped, then the charset that succeeds to represent the
		  attachment data will be used in the `charset=' MIME parame‐
		  ter of the mail message.

		  ·   If input and output character sets are specified, then
		      the conversion is performed on the fly.  The user will
		      be asked repeatedly until the desired conversion suc‐

		  ·   If only an output character set is specified, then the
		      input is assumed to be in the ttycharset charset and
		      will be converted to the given output charset on the
		      fly.  The user will be asked repeatedly until the
		      desired conversion succeeds.

		  ·   If no character sets are specified at all then the algo‐
		      rithm that is documented in the section Character sets
		      is applied, but directly and on the fly.	The user will
		      be asked repeatedly until the desired conversion suc‐

		  ·   Finally, if an input-, but no output character set is
		      specified, then no conversion is ever performed, but the
		      `charset=' MIME parameter will still be set to the user

		  ·   The character set selection loop can be left by typing
		      `control-C', i.e., causing an interrupt.	XXX Note that
		      before Mail version 15.0 this terminates the entire cur‐
		      rent attachment selection, not only the character set

		  Without character set conversion support, Mail will ask for
		  the input character set only, and it'll set the `charset='
		  MIME parameter to the given input, if any; if no user input
		  is seen then the ttycharset character set will be used for
		  the `charset=' parameter instead.  Note that the file exten‐
		  sion check isn't performed in this mode, since no conversion
		  will take place anyway.

		  Note that in non-interactive mode, for reproduceabilities
		  sake, there will always be two questions for each attach‐
		  ment, regardless of wether character set conversion is
		  available and what the file extension is.  The first asks
		  for the filename, and the second asks for the input charac‐
		  ter set to be passed through to the `charset=' MIME parame‐
		  ter; no conversion will be tried if there is input to the
		  latter question, otherwise the usual conversion algorithm,
		  as above, is applied.	 For message attachments, the answer
		  to the second question is completely ignored.

		  If filename arguments are specified, they are treated as a
		  comma separated list of files, which are all expanded and
		  appended to the end of the attachment list.  (Filenames with
		  commas, or with leading or trailing whitespace can only be
		  added via the command line or the first method.  Message
		  attachments can only be added via the first method; file‐
		  names which clash with message numbers can only be added via
		  the command line or the second method.)  In this mode the
		  (text) attachments are assumed to be in ttycharset encoding,
		  and will be evaluated as documented in the section Character

     ~A		  Inserts the string contained in the Sign variable (same as
		  `~i Sign').  The escape sequences `\t' (tabulator) and `\n'
		  (newline) are understood.

     ~a		  Inserts the string contained in the sign variable (same as
		  `~i sign').  The escape sequences `\t' (tabulator) and `\n'
		  (newline) are understood.

     ~b name ...  Add the given names to the list of blind carbon copy recipi‐

     ~c name ...  Add the given names to the list of carbon copy recipients.

     ~d		  Read the file specified by the DEAD variable into the mes‐

     ~e		  Invoke the text editor on the message collected so far.
		  After the editing session is finished, the user may continue
		  appending text to the message.

     ~f messages  Read the named messages into the message being sent.	If no
		  messages are specified, read in the current message.	Mes‐
		  sage headers currently being ignored (by the ignore or
		  retain command) are not included.  For MIME multipart mes‐
		  sages, only the first printable part is included.

     ~F messages  Identical to `~f', except that all message headers and MIME
		  parts are included.

     ~h		  Edit the message header fields `To:', `Cc:', `Bcc:', and
		  `Subject:' by typing each one in turn and allowing the user
		  to edit the field.

     ~H		  Edit the message header fields `From:', `Reply-To:',
		  `Sender:' and `Organization:' in the same manner as
		  described for ~h.  The default values for these fields orig‐
		  inate from the from, replyto, sender and ORGANIZATION vari‐

     ~i variable  Insert the value of the specified variable into the message,
		  adding a newline character at the end.  The message remains
		  unaltered if the variable is unset or empty.	The escape
		  sequences `\t' (tabulator) and `\n' (newline) are under‐

     ~m messages  Read the named messages into the message being sent,
		  indented by a tab or by the value of indentprefix.  If no
		  messages are specified, read the current message.  Message
		  headers currently being ignored (by the ignore or retain
		  commands) are not included.  For MIME multipart messages,
		  only the first printable part is included.

     ~M messages  Identical to `~m', except that all message headers and MIME
		  parts are included.

     ~p		  Print out the message collected so far, prefaced by the mes‐
		  sage header fields and followed by the attachment list, if

     ~q		  Abort the message being sent, copying it to the file speci‐
		  fied by the DEAD variable if save is set.

     ~r filename  Read the named file into the message.

     ~s string	  Cause the named string to become the current subject field.

     ~t name ...  Add the given name(s) to the direct recipient list.

     ~u messages  Like `~f', but exclude all message headers.

     ~U messages  Like `~m', but exclude all message headers.

     ~v		  Invoke an alternate editor (defined by the VISUAL option) on
		  the message collected so far.	 Usually, the alternate editor
		  will be a screen editor.  After the editor is quit, the user
		  may resume appending text to the end of the message.

     ~w filename  Write the message onto the named file.  If the file exists,
		  the message is appended to it.

     ~x		  Same as `~q', except that the message is not saved at all.

     ~| command	  Pipe the message through the specified filter command.  If
		  the command gives no output or terminates abnormally, retain
		  the original text of the message.  E.g., the command fmt(1)
		  is often used as a rejustifying filter.

   Variable options
     Options are controlled via set and unset commands, see the corresponding
     entries for a syntax description.	An option is also set if it is passed
     to Mail as part of the program environment (this is not restricted to
     specific variables as in the POSIX standard).  A value given in a startup
     file overrides a value imported from the environment.  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.

   Binary options
     The binary options include the following:

		When file or pipe recipients have been specified, mention them
		in the corresponding address fields of the message instead of
		silently stripping them from their recipient list.  By default
		such addressees are not mentioned.

     allnet	Causes only the local part to be evaluated when comparing

     append	Causes messages saved in mbox to be appended to the end rather
		than prepended.	 This should always be set.

     ask or asksub
		Causes Mail to prompt for the subject of each message sent.
		If the user responds with simply a newline, no subject field
		will be sent.

     askatend	Causes the prompts for `Cc:' and `Bcc:' lists to appear after
		the message has been edited.

     askattach	If set, Mail asks for files to attach at the end of each mes‐
		sage.  An empty line finalizes the list.

     askcc	Causes the user to be prompted for additional carbon copy
		recipients (at the end of each message if askatend or
		bsdcompat are set).  An empty line finalizes the list.

     askbcc	Causes the user to be prompted for additional blind carbon
		copy recipients (at the end of each message if askatend or
		bsdcompat are set).  An empty line finalizes the list.

     asksign	[Optional] Causes the user to be prompted if the message is to
		be signed at the end of each message.  The smime-sign variable
		is ignored when this variable is set.

		Causes threads to be collapsed automatically when threaded
		mode is entered (see the collapse command).

     autoprint	Causes the delete command to behave like `dp -'; thus, after
		deleting a message the next one will be typed automatically.

		Causes threaded mode (see the thread command) to be entered
		automatically when a folder is opened.

     bang	Enables the substitution of `!' by the contents of the last
		command line in shell escapes.

		If the batch mode has been enabled via the -# command line
		option, then this variable will be consulted whenever Mail
		completes one operation (returns to the command prompt); if it
		is set then Mail will terminate if the last operation gener‐
		ated an error.

		Causes automatic display of a header summary after executing a
		folder command.

     bsdcompat	Sets some cosmetical features to traditional BSD style; has
		the same affect as setting askatend and all other variables
		prefixed with `bsd'; it also changes the meaning of the Mail
		specific `\&' prompt escape sequence.

     bsdflags	Changes the letters printed in the first column of a header
		summary to traditional BSD style.

		Changes the display of columns in a header summary to tradi‐
		tional BSD style.

     bsdmsgs	Changes some informational messages to traditional BSD style.

     bsdorder	Causes the `Subject:' field to appear immediately after the
		`To:' field in message headers and with the `~h' tilde com‐

     bsdset	Changes the output format of the set command to traditional
		BSD style.

		[Optional] Forcefully disable usage of colours.	 Also see the
		section Coloured message display.

     debug	Prints debugging messages and disables the actual delivery of
		messages.  Unlike verbose, this option is intended for Mail
		development only.

		[Optional] When an IMAP mailbox is selected and this variable
		is set, no connection to the server is initiated.  Instead,
		data is obtained from the local cache (see imap-cache).	 Mail‐
		boxes that are not present in the cache and messages that have
		not yet entirely been fetched from the server are not avail‐
		able; to fetch all messages in a mailbox at once, the command
		`copy * /dev/null' can be used while still in online mode.
		Changes that are made to IMAP mailboxes in disconnected mode
		are queued and committed later when a connection to that
		server is opened in online mode.  This procedure is not com‐
		pletely reliable since it cannot be guaranteed that the IMAP
		unique identifiers (UIDs) on the server still match the ones
		in the cache at that time.  Data is saved to DEAD when this
		problem occurs.

		The specified account is handled as described for the
		disconnected variable above, but other accounts are not

     dot	The binary option dot causes Mail to interpret a period alone
		on a line as the terminator of a message the user is sending.

     editalong	If this variable is set then the editor is started automati‐
		cally when composing a message in an interactive mode, as if
		the `~e' tilde command had been specified.  The editheaders
		variable is implied for this automatically spawned editor ses‐

		When a message is edited while being composed, its header is
		included in the editable text.	The `To:', `Cc:', `Bcc:',
		`Subject:', `From:', `Reply-To:', `Sender:', and 'Organiza‐
		tion:' fields are accepted within the header, other fields are

     emptybox	If set, an empty mailbox file is not removed.  This may
		improve the interoperability with other mail user agents when
		using a common folder directory.

		If the mailbox is empty Mail normally prints `No mail for
		user' and exits immediately.  If this option is set Mail
		starts even with an empty mailbox.

     flipr	Exchanges the Respond with the respond commands and vice-

		Original messages are normally sent as inline text with the
		forward command, and only the first part of a multipart mes‐
		sage is included.  With this option messages are sent as MIME
		`message/rfc822' attachments with all of their parts included.
		The fwdignore and fwdretain options are ignored when the
		forward-as-attachment option is set.

     fullnames	When replying to a message Mail normally removes the comment
		parts of email addresses, which by convention contain the full
		names of the recipients.  If this variable is set such strip‐
		ping is not performed, and comments are retained.

     header	Causes the header summary to be written at startup and after
		commands that affect the number of messages or the order of
		messages in the current folder; enabled by default.

     hold	This option is used to hold messages in the system mailbox by

		[Optional] Can be used to turn off the automatic conversion of
		domain names according to the rules of IDNA (internationalized
		domain names for applications).	 Since the IDNA code assumes
		domain names are specified with the ttycharset character set,
		an UTF-8 locale charset is required to represent all possible
		international domain names (before conversion, that is).

     ignore	Causes interrupt signals from the terminal to be ignored and
		echoed as `@'s.

     ignoreeof	An option related to dot is ignoreeof, which makes Mail refuse
		to accept a `control-D' as the end of a message.  This option
		also applies to Mail command mode.

		[Optional] Causes Mail to issue a `STARTTLS' command to make
		an unencrypted IMAP session SSL/TLS encrypted.	This function‐
		ality is not supported by all servers, and is not used if the
		session is already encrypted by the IMAPS method.

		Activates imap-use-starttls for a specific account.

     keep	This option causes Mail to truncate the user's system mailbox
		instead of deleting it when it is empty.  This should always
		be set since it prevents malicious users from creating fake
		mail folders in a world-writable spool directory.

     keepsave	When a message is saved it is usually discarded from the orig‐
		inating folder when Mail is quit.  Setting this option causes
		all saved message to be retained.

		Turn off any enhanced command line editing capabilities (see
		Command line editor for more).

		When a message is replied to and this variable is set, it is
		marked as having been answered.	 This mark has no technical
		meaning in the mail system; it just causes messages to be
		marked in the header summary, and makes them specially

		By setting this option the generation of `Message-ID:' can be
		completely suppressed, effectively leaving this task up to the
		mail-transfer-agent (MTA) or the SMTP server.  (According to
		RFC 5321 your SMTP server is not required to add this field by
		itself, so you should ensure that it accepts messages without
		a `Message-ID'.)

     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.

		When sending messages, each part of the message is MIME-
		inspected in order to classify the `Content-Type:' and `Con‐
		tent-Transfer-Encoding:' that is required to send this part
		over mail transport, i.e., a computation rather similar to
		what the file(1) command produces when used with the --mime

		This classification however treats text files which are
		encoded in UTF-16 (often found for HTML files) and similar
		character sets as binary octet-streams, forcefully changing
		any `text/plain' or `text/html' specification to `applica‐
		tion/octet-stream'; if that actually happens, then a yet unset
		charset MIME parameter is set to `binary', effectively making
		it impossible for the receiving MUA to automatically interpret
		the contents of the part.

		If this option is set, and the data was unambiguously identi‐
		fied as text data at first glance (by a `.txt' or `.html' file
		extension), then the original `Content-Type:' will not be

		Normally the `Content-Type:' field is used to decide how to
		treat a messages MIME part.  Some MUAs however don't use
		mime.types(5) or a similar mechanism to correctly classify
		content, but simply specify `application/octet-stream', even
		for plain text attachments like `text/diff'.  If this variable
		is set then Mail will use the file extension of attachments to
		classify such MIME message parts, if possible.

     noheader	Setting this option is the same as using the command line
		option -N.

     outfolder	Causes the filename given in the record variable and the
		sender-based filenames for the Copy and Save commands to be
		interpreted relative to the directory given in the folder
		variable rather than to the current directory, unless it is
		set to an absolute pathname.

     page	If set, each message the pipe command prints out is followed
		by a formfeed character.

     piperaw	Send messages to the pipe command without performing MIME and
		character set conversions.

		[Optional] When accessing a POP3 server Mail loads the headers
		of the messages, and only requests the message bodies on user
		request.  For the POP3 protocol this means that the message
		headers will be downloaded twice.  If this option is set then
		Mail will download only complete messages from POP3 servers
		instead.  It may be useful to define a macro that temporarily
		sets this option, then accesses a POP3 account that is known
		to only get small text messages, and then unsets this variable

		[Optional] Unless this variable is set the `APOP' authentica‐
		tion method will be used when connecting to a POP3 server that
		advertises support.  The advantage of APOP over `USER/PASS'
		authentication is that the password is not sent in clear text
		over the wire and that only a single packet is sent for the
		user/password tuple.

		Disables usage of the `APOP' authentication method (see
		pop3-no-apop) for a specific account.

		[Optional] Causes Mail to issue a `STLS' command to make an
		unencrypted POP3 session SSL/TLS encrypted.  This functional‐
		ity is not supported by all servers, and is not used if the
		session is already encrypted by the POP3S method.

		Activates pop3-use-starttls for a specific account.

		This option causes all characters to be considered printable.
		It is only effective if given in a startup file.  With this
		option set some character sequences in messages may put the
		user's terminal in an undefined state when printed; it should
		only be used as a last resort if no working system locale can
		be found.

		When a MIME message part of type `multipart/alternative' is
		displayed and it contains a subpart of type `text/plain',
		other parts are normally discarded.  Setting this variable
		causes all subparts to be displayed, just as if the surround‐
		ing part was of type `multipart/mixed'.

     quiet	Suppresses the printing of the version when first invoked.

		If this is set, then the original message is added in its
		entirety as a `message/rfc822' MIME attachment when replying
		to a message.  Note this works regardless of the setting of

		On group replies, specify only the sender of the original mail
		in `To:' and mention it's other recipients in the secondary

		If both this variable and the record variable are set, the
		resend and Resend commands save messages to the record folder
		as it is normally only done for newly composed messages.

		If this variable is set Mail first tries to use the same char‐
		acter set of the original message for replies.	If this fails,
		the mechanism described in Character sets is evaluated as

     Replyall	Reverses the sense of reply and Reply commands.

		This variable can be used to force the display of a so-called
		`From_' line for messages that are embedded into an envelope
		mail via the `message/rfc822' MIME mechanism.

     save	When the user aborts a message with two `RUBOUT' (interrupt,
		`control-C') characters, Mail will copy the partial letter to
		the file DEAD.	This option is set by default.

		Expand message-list specifiers in the form `/x:y' to all mes‐
		sages containing the substring `y' in the header field `x'.
		The string search is case insensitive.

		[Optional] If this variable is set, but sendcharsets is not,
		then Mail acts as if sendcharsets had been set to the value of
		the variable ttycharset.  In effect this combination passes
		through the message data in the character set of the current
		locale (given that ttycharset hasn't been set manually), i.e.,
		without converting it to the charset-8bit fallback character
		set.  Thus, mail message text will be in `ISO-8859-1' encoding
		when send from within a `ISO-8859-1' locale, and in `UTF-8'
		encoding when send from within an `UTF-8' locale.  If no char‐
		acter set conversion capabilities are available in Mail then
		the only supported character set is ttycharset.

     sendwait	When sending a message wait until the MTA exits before accept‐
		ing further commands.  If the MTA returns a non-zero exit sta‐
		tus, the exit status of mail will also be non-zero.

     showlast	Setting this option causes Mail to start at the last message
		instead of the first one when opening a mail folder.

     showname	Causes Mail to use the sender's real name instead of the plain
		address in the header field summary and in message specifica‐

     showto	Causes the recipient of the message to be shown in the header
		summary if the message was sent by the user.

		If an outgoing message does not contain any text in its first
		or only message part, do not send it but discard it silently
		(see also the command line option -E).

		[Optional] Causes Mail to refuse sending unencrypted messages.

		[Optional] S/MIME sign outgoing messages with the user's pri‐
		vate key.  Signing a message enables a recipient to verify
		that the sender used a valid certificate, that the email
		addresses in the certificate match those in the message header
		and that the message content has not been altered.  It does
		not change the message text, and people will be able to read
		the message as usual.

		[Optional] Don't load default CA locations when verifying
		S/MIME signed messages.

		[Optional] Causes Mail to issue a `STARTTLS' command to make
		an SMTP session SSL/TLS encrypted.  Not all servers support
		this command – because of common implementation defects it
		can't be automatically determined whether a server supports it
		or not.

		[Optional] Don't load default CA locations to verify SSL/TLS
		server certificates.

		[Optional] Accept SSLv2 connections.  These are normally not
		allowed because this protocol version is insecure.

		When (editing messages and) writing MBOX mailbox files Mail
		can be told to keep the `Content-Length:' and `Lines:' header
		fields that some MUAs generate by setting this variable.
		Since Mail does neither use nor update these non-standardized
		header fields (which in itself shows one of their conceptual
		problems), stripping them should increase interoperability in
		between MUAs that work with with same mailbox files.  Note
		that, if this is not set but writebackedited, as below, is, a
		possibly performed automatic stripping of these header fields
		already marks the message as being modified.

     verbose	Setting the option verbose is the same as using the command
		line option -v.	 When Mail runs in verbose mode details of the
		actual message delivery and protocol conversations for IMAP,
		POP3, and SMTP, as well as of other internal processes, are
		displayed on the user's terminal.  This is sometimes useful to
		debug problems.	 Mail prints all data that is sent to remote
		servers in clear texts, including passwords, so care should be
		taken that no unauthorized option can view the screen if this
		option is enabled.

		If this variable is set messages modified using the edit or
		visual commands are written back to the current folder when it
		is quit; it is only honoured for writable folders in `mbox'
		format, though.	 Note that the editor will be pointed to the
		raw message content in that case, i.e., neither MIME decoding
		nor decryption will have been performed, and proper RFC 4155
		`From ' quoting of newly added or edited content is also left
		as an excercise to the user.

   Value options
     The value options include the following:

     attrlist	A sequence of characters to print in the `attribute' column of
		a header summary, each for one type of messages in the follow‐
		ing order: new (N), unread but old (U), new but read (R), read
		and old (O), saved (S), preserved (P), mboxed (M), flagged
		(F), answered (A), draft (T), start of a collapsed thread (+),
		collapsed (-), classified as spam ($).	The default is
		`NUROSPMFAT+-$', or `NU	 *HMFAT+-$' if bsdflags or the SYSV3
		environment variable are set.

     autobcc	Specifies a list of recipients to which a blind carbon copy of
		each outgoing message will be sent automatically.

     autocc	Specifies a list of recipients to which a carbon copy of each
		outgoing message will be sent automatically.

     autosort	Causes sorted mode (see the sort command) to be entered auto‐
		matically with the value of this option as sorting method when
		a folder is opened.

		The value that should appear in the `charset=' parameter of
		`Content-Type:' MIME header fields when no character set con‐
		version of the message data was performed.  This defaults to
		`US-ASCII', and the chosen character set should be `US-ASCII'

		[Optional] The default 8 bit character set that is used as an
		implied last member of the variable sendcharsets.  Defaults to
		`UTF-8'.  If no character set conversion capabilities are
		available in Mail then the only supported character set is
		ttycharset.  Refer to the section Character sets for the com‐
		plete picture of character set conversion in Mail.

     cmd	The default value for the pipe command.

		[Optional] The colour specification for so-called `From_'
		lines.	See the section Coloured message display for the for‐
		mat of the value.

		[Optional] The colour specification for header lines.  See the
		section Coloured message display for the format of the value.

		[Optional] The colour specification for the introductional
		message info line.  See the section Coloured message display
		for the format of the value.

		[Optional] A comma-separated list of PAGERs for which coloured
		message display can be used.  Note that only a substring com‐
		parison is performed, meaning that the string `lesser' will
		match the string `less'.  See the section Coloured message
		display for more on this.  The default is set to the sole
		string `less'.

		[Optional] The colour specification for MIME part info lines.
		See the section Coloured message display for the format of the

		[Optional] A comma-separated list of TERMinals for which
		coloured message display can be used.  The default is


		[Optional] The colour specification for those header lines
		that have been placed in the colour-user-headers list.	See
		the section Coloured message display for the format of the

		A comma separated list of (case-insensitive) header names
		which should be colourized with the alternative colour-uheader
		colours.  The default value is `from,subject'.

     crt	The valued option crt is used as a threshold to determine how
		long a message must be before PAGER is used to read it.	 If
		crt is set without a value then the height of the terminal
		screen stored in the system is used to compute the threshold
		(see LINES and stty(1)).

     DEAD	The name of the file to use for saving aborted messages.  This
		defaults to `dead.letter' in the user's home directory.

     datefield	The date in a header summary is normally the date of the mail‐
		box `From ' line of the message.  If this variable is set,
		then the date as given in the `Date:' field is used, converted
		to local time.	It is possible to control the display of the
		date by assigning a value, in which case the strftime(3) func‐
		tion will be used to format the date accordingly.  Please read
		your system manual for the available formats.  Note that the
		`%n' format should not be used, because Mail doesn't take
		embedded newlines into account when calculating how many lines
		fit onto the screen.

		This option, when set in addition to datefield, modifies the
		display of messages that are not really current in a way that
		is rather comparable to the -l option of the POSIX ls(1) com‐
		mand.  The interpretation of the value is identical to what
		has been described for datefield.

     EDITOR	Pathname of the text editor to use in the edit command and ~e
		tilde escape.  A default editor is used if this value is not

     encoding	The default MIME encoding to use in outgoing text messages and
		message parts.	Valid values are the default `quoted-print‐
		able', `8bit' and `base64'.  `8bit' may cause problems with
		mail transfers that are not ESMTP compliant.  If there is no
		need to encode a message, `7bit' transfer mode is always used
		regardless of this variable.  Binary data is always encoded as

     escape	If defined, the first character of this option gives the char‐
		acter to use in place of `~' to denote tilde escapes.

     folder	The name of the directory to use for storing folders of mes‐
		sages.	All folder names that begin with `+' refer to files
		below it.  The same special conventions as documented for the
		folder command may be used when specifying a new value for
		folder, but be aware that the expansion is fully performed
		immediately.  E.g., if the expanded name refers to an IMAP
		account, all names that begin with `+' refer to IMAP mailboxes
		below the folder target box.

		Note: some IMAP servers do not accept the creation of mail‐
		boxes in the hierarchy base, but require that they are created
		as subfolders of `INBOX' – with such servers a folder name of
		the form


		should be used (the last character is the server's hierarchy
		delimiter).  Folder names prefixed by `+' will then refer to
		folders below `INBOX', while folder names prefixed by `@'
		refer to folders below the hierarchy base.  See the imap
		namespace command for a method to detect the appropriate pre‐
		fix and delimiter.

		When a folder is opened and this variable is set, the macro
		corresponding to the value of this variable is executed.  The
		macro is also invoked when new mail arrives, but message lists
		for commands executed from the macro only include newly
		arrived messages then.

		When a folder named `fullname' is opened, the macro corre‐
		sponding to the value of this variable is executed.  Unlike
		other folder specifications, the fully expanded name of a
		folder, without metacharacters, is used to avoid ambiguities.
		The macro specified with folder-hook is not executed if this
		variable is effective for a folder (but it can be called from
		within the actually executed macro).

     from	The address (or a list of addresses) to put into the `From:'
		field of the message header.  If replying to messages these
		addresses are handled as if they were in the alternates list.
		If the machine's hostname is not valid at the Internet (for
		example at a dialup machine), then either this variable or
		hostname have to be set.  If from contains more than one
		address, the sender variable must also be set.

		The string to print before the text of a message with the
		forward command (unless the forward-as-attachment variable is
		set).  Defaults to `-------- Original Message --------' if
		unset.	No heading is printed if it is set to the empty

     headline	A format string to use for the header summary, similar to
		printf(3) formats.  A `%' character introduces a format speci‐
		fier.  It may be followed by a number indicating the field
		width.	If the (possibly implicitly implied) field width is
		negative, the field is to be left-aligned.  Valid format spec‐
		ifiers are:

		      %a  Message attributes.

		      %d  The date when the message was received.

		      %e  The indenting level in threaded mode.

		      %f  The address of the message sender.

		      %i  The message thread structure.	 (Note that this for‐
			  mat doesn't support a field width.)

		      %l  The number of lines of the message.

		      %m  Message number.

		      %o  The number of octets (bytes) in the message.

		      %s  Message subject (if any).

		      %S  Message subject (if any) in double quotes.

		      %t  The position in threaded/sorted order.

		      %>  A `>' for the current message, otherwise ` '.

		      %<  A `<' for the current message, otherwise ` '.

		      %$  The spam score of the message, as has been classi‐
			  fied via the command spamrate.

		      %%  A `%' character.

		The default is `%>%a%m %-18f %16d %4l/%-5o %i%-s', or
		`%>%a%m %20-f  %16d %3l/%-5o %i%-S' if bsdcompat is set.

     hostname	Use this string as hostname when expanding local addresses
		instead of the value obtained from uname(2) and
		getaddrinfo(3), i.e., in `Message-ID:' and `From:' fields.
		Note that when smtp transport is not used then it is normally
		the responsibility of the MTA to create these fields; you
		should produce some test messages with the desired combination
		of hostname, and/or from, sender etc. first.

     imap-auth	[Optional] Sets the IMAP authentication method.	 Valid values
		are `login' for the usual password-based authentication (the
		default), `cram-md5', which is a password-based authentication
		that does not send the password over the network in clear
		text, and `gssapi' for GSSAPI-based authentication.

		Sets the IMAP authentication method for a specific account.

		[Optional] Enables caching of IMAP mailboxes.  The value of
		this variable must point to a directory that is either exis‐
		tent or can be created by Mail.	 All contents of the cache can
		be deleted by Mail at any time; it is not safe to make assump‐
		tions about them.

		[Optional] IMAP servers may close the connection after a
		period of inactivity; the standard requires this to be at
		least 30 minutes, but practical experience may vary.  Setting
		this variable to a numeric `value' greater than 0 causes a
		`NOOP' command to be sent each `value' seconds if no other
		operation is performed.

		[Optional] When retrieving the list of folders on an IMAP
		server, the folders command stops after it has reached a cer‐
		tain depth to avoid possible infinite loops.  The value of
		this variable sets the maximum depth allowed.  The default is
		2.  If the folder separator on the current IMAP server is a
		slash `/', this variable has no effect and the folders command
		does not descend to subfolders.

		String used by the `~m' and `~M' tilde escapes and by the
		quote option for indenting messages, in place of the normal
		tab character (`^I').  Be sure to quote the value if it con‐
		tains spaces or tabs.

     LISTER	Pathname of the directory lister to use in the folders command
		when operating on local mailboxes.  Default is /bin/ls.

		[Optional] If the builtin command line editor is used, actions
		which are based on rightwise movement may not work on some
		terminals.  If you encounter such problems, set this variable
		to the terminal control sequence that is necessary to move the
		cursor one column to the right.	 The default is `\033[C',
		which should work for most terminals.  Less often occur
		`\033OC' and `\014'.  Note that `ESCAPE' and other control
		character have to be written as shell-style escape sequences,
		e.g., `\033' for `ESCAPE'.

     MAIL	Is used as the user's mailbox, if set.	Otherwise, a system-
		dependent default is used.  Supports a logical subset of the
		special conventions that are documented for the folder command
		and the folder option.

     MBOX	The name of the mbox file.  Supports a logical subset of the
		special conventions that are documented for the folder command
		and the folder option.	The fallback default is `mbox' in the
		user's home directory.

		This option can be used to control which of the mime.types(5)
		MIME type databases are loaded by Mail.	 If the letter `u' (or
		`U') is part of this options value, then the user's personal
		~/.mime.types file will be loaded (if it exists); likewise the
		letter `s' (or `S') controls loading of the system wide
		/etc/mime.types.  If this option is not set Mail will try to
		load both files instead.  Incorporation of the MIME types that
		are compiled into Mail cannot be suppressed.

		The name of an optional startup file to be read after
		~/.mailrc.  This variable is ignored if it is imported from
		the environment; it has an effect only if it is set in
		/etc/mail.rc or ~/.mailrc to allow bypassing the configuration
		with, e.g., `MAILRC=/dev/null'.	 Use this file for commands
		that are not understood by other Mail implementations.

     NAIL_HEAD	A string to put at the beginning of each new message.  The
		escape sequences `\t' (tabulator) and `\n' (newline) are

		[Optional] If a command line editor is available then this can
		be set to name the (expandable) path of the location of a per‐
		manent history file.

		[Optional] If a command line editor is available this value
		restricts the amount of history entries that are saved into a
		set and valid NAIL_HISTFILE.  A value of less than 0 disables
		this feature; note that loading and incorporation of
		NAIL_HISTFILE upon program startup can also be suppressed by
		doing this.  An unset or invalid value, or 0, causes a default
		value to be used.  Dependent on the available command line
		editor this will also define the number of history entries in
		memory; it is also editor-specific wether runtime updates of
		this value will be honoured.

     NAIL_TAIL	A string to put at the end of each new message.	 The escape
		sequences `\t' (tabulator) and `\n' (newline) are understood.

		If this variable has the value `maildir', newly created local
		folders will be in `maildir' format.

     newmail	Checks for new mail in the current folder each time the prompt
		is printed.  For IMAP mailboxes the server is then polled for
		new mail, which may result in delayed operation if the connec‐
		tion to the server is slow.  A `maildir' folder must be re-
		scanned to determine if new mail has arrived.

		If this variable is set to the special value `nopoll' an IMAP
		server is not actively asked for new mail, but new mail may
		still be detected and announced with any other IMAP command
		that is sent to the server.  A `maildir' folder is not
		scanned, then.

		In either case the IMAP server may send notifications about
		messages that have been deleted on the server by another
		process or client.  In this case, `Expunged X messages' is
		printed regardless of this variable, and message numbers may
		have changed.

		The value to put into the `Organization:' field of the message

     PAGER	Pathname of the program to use in the more command or when the
		crt variable is set.  The default paginator is more(1).

		Set the password for `user' when connecting to `host'.	If no
		such variable is defined for a host, the user will be asked
		for a password on standard input.  Specifying passwords in a
		startup file is generally a security risk; the file should be
		readable by the invoking user only.

		When a MIME message part of `content/subcontent' type is dis‐
		played or is replied to, its text is filtered through the
		value of this variable interpreted as a shell command.

		The special value `@' can be used to force interpretation of
		the message part as plain text, e.g., `set pipe-applica‐
		tion/pgp-signature=@' will henceforth treat signatures as
		plain text and display them "as is".

		Also, if a normal shell command is prefixed with `@', then the
		command will only be used to prepare the MIME message part if
		the message is displayed by itself, but not when multiple mes‐
		sages are displayed at once.

		Finally, if a normal shell command is prefixed with `@&',
		then, in addition to what has been described for the plain `@'
		shell command prefix, the command will be run asynchronously,
		i.e., without blocking Mail, which may be a handy way to dis‐
		play a, e.g., PDF file while also continuing to read the mail

		Special care must be taken when using such commands as mail
		viruses may be distributed by this method; if messages of type
		`application/x-sh' were filtered through the shell, for exam‐
		ple, a message sender could easily execute arbitrary code on
		the system Mail is running on.

		[Optional] POP3 servers close the connection after a period of
		inactivity; the standard requires this to be at least 10 min‐
		utes, but practical experience may vary.  Setting this vari‐
		able to a numeric `value' greater than 0 causes a `NOOP' com‐
		mand to be sent each `value' seconds if no other operation is

     prompt	The string printed when a command is accepted.	Prompting may
		be prevented by either setting this to the null string or by
		setting noprompt.  The same XSI escape sequences that are
		understood by the echo command may be used within prompt.

		In addition, the following Mail specific additional sequences
		are understood: `\&', which expands to `?' unless bsdcompat is
		set, in which case it expands to `&'; note that "\& " is the
		default value for prompt.  `\?', which will expand to `1' if
		the last command failed, and to `0' otherwise, `\$', which
		will expand to the name of the currently active account, if
		any, and to the empty string otherwise, and `\@', which will
		expand to the name of the currently active mailbox.  (Note
		that the prompt buffer is size-limited, excess is cut off.)

		When a newer version of the editline(3) Command line editor is
		used, any escape sequence must itself be encapsulated with
		another escape character for usage with the EL_PROMPT_ESC
		mechanism: Mail configures the control character `\01' for

     quote	If set, Mail starts a replying message with the original mes‐
		sage prefixed by the value of the variable indentprefix.  Nor‐
		mally, a heading consisting of `Fromheaderfield wrote:' is
		printed before the quotation.  If the string `noheading' is
		assigned to the quote variable, this heading is omitted.  If
		the string `headers' is assigned, the headers selected by the
		ignore/retain commands are printed above the message body,
		thus quote acts like an automatic `~m' tilde escape command,
		then.  If the string `allheaders' is assigned, all headers are
		printed above the message body and all MIME parts are
		included, making quote act like an automatic `~M' command.
		Also see quote-as-attachment.

		[Optional] Can be set in addition to indentprefix.  Setting
		this turns on a more fancy quotation algorithm in that leading
		quotation characters are compressed and overlong lines are
		folded.	 quote-fold can be set to either one or two (space
		separated) numeric values, which are interpreted as the maxi‐
		mum (goal) and the minimum line length, respectively, in a
		spirit rather equal to the fmt(1) program, but line-, not
		paragraph-based.  If not set explicitly the minimum will
		reflect the goal algorithmically.  The goal can't be smaller
		than the length of indentprefix plus some additional pad.
		Necessary adjustments take place silently.

     record	If defined, gives the pathname of the folder used to record
		all outgoing mail.  If not defined, then outgoing mail is not
		saved.	When saving to this folder fails the message is not
		sent, but instead saved to DEAD.

     replyto	A list of addresses to put into the `Reply-To:' field of the
		message header.	 Members of this list are handled as if they
		were in the alternates list.

     screen	When Mail initially prints the message headers it determines
		the number to print by looking at the speed of the terminal.
		The faster the terminal, the more it prints.  This option
		overrides this calculation and specifies how many message
		headers are printed.  This number is also used for scrolling
		with the z command.

		[Optional] A comma-separated list of character set names that
		can be used in outgoing Internet mail.	The value of the vari‐
		able charset-8bit is automatically appended to this list of
		character-sets.	 If no character set conversion capabilities
		are compiled into Mail then the only supported charset is
		ttycharset.  Also see sendcharsets-else-ttycharset and refer
		to the section Character sets for the complete picture of
		character set conversion in Mail.

     sender	An address that is put into the `Sender:' field of outgoing
		messages.  This field needs not normally be present.  It is,
		however, required if the `From:' field contains more than one
		address.  It can also be used to indicate that a message was
		sent on behalf of someone else – in this case, `From:' should
		contain the address of the person that took responsibility for
		the message, and `Sender:' should contain the address of the
		person that actually sent the message.	The sender address is
		handled as if it were in the alternates list.

     sendmail	To use an alternate mail delivery system, set this option to
		the full pathname of the program to use.  It may be necessary
		to set sendmail-progname in addition.

		Many systems use a so-called mailwrapper(8) environment to
		ensure compatibility with sendmail(1).	This works by inspect‐
		ing the name that was used to invoke the mail delivery system.
		If this variable is set then the mailwrapper (the program that
		is actually executed when calling `sendmail') will treat its
		contents as that name.	The default is `sendmail'.

     SHELL	Pathname of the shell to use in the !  command and the `~!'
		tilde escape.  A default shell is used if this option is not

     Sign	A string for use with the `~A' tilde escape.

     sign	A string for use with the `~a' tilde escape.

     signature	Must correspond to the name of a readable file if set.	The
		file's content is then appended to each singlepart message and
		to the first part of each multipart message.  Be warned that
		there is no possibility to edit the signature for an individ‐
		ual message.

		[Optional] Specifies a directory with CA certificates in PEM
		(Privacy Enhanced Mail) format for verification of S/MIME
		signed messages.

		[Optional] Specifies a file with CA certificates in PEM format
		for verification of S/MIME signed messages.

		[Optional] Specifies a cipher to use when generating S/MIME
		encrypted messages for `user@host'.  RFC 5751 mandates a
		default of `aes-128' (AES-128 CBC).

		The actually available cipher algorithms depend on the crypto‐
		graphic library that Mail uses; possible values are, in
		decreasing cipher strength: `aes-256' (AES-256 CBC), `aes-192'
		(AES-192 CBC), `aes-128' (AES-128 CBC), `des3' (DES EDE3 CBC,
		168 bits; default if `aes-128' isn't available) and `des' (DES
		CBC, 56 bits).

		The following ciphers have been obsoleted and are no longer
		mentioned by the S/MIME specification (RFC 5751), but may be
		selected if available: `rc2-64' (RC2 CBC, 64 bits) and
		`rc2-40' (RC2 CBC, 40 bits).

		[Optional] Specifies a file that contains a CRL in PEM format
		to use when verifying S/MIME messages.

		[Optional] Specifies a directory that contains files with CRLs
		in PEM format to use when verifying S/MIME messages.

		[Optional] If this variable is set, messages to `user@host'
		are encrypted before sending.  The value of the variable must
		be set to the name of a file that contains a certificate in
		PEM format.

		If a message is sent to multiple recipients, each of them for
		whom a corresponding variable is set will receive an individu‐
		ally encrypted message; other recipients will continue to
		receive the message in plain text unless the
		smime-force-encryption variable is set.	 It is recommended to
		sign encrypted messages, i.e., to also set the smime-sign

		[Optional] Points to a file in PEM format that contains the
		user's private key as well as his certificate.	Both are used
		with S/MIME for signing and decrypting messages.

		Overrides smime-sign-cert for the specific addresses.  When
		signing messages and the value of the from variable is set to
		`user@host', the specific file is used.	 When decrypting mes‐
		sages, their recipient fields (`To:' and `Cc:') are searched
		for addresses for which such a variable is set.	 Mail always
		uses the first address that matches, so if the same message is
		sent to more than one of the user's addresses using different
		encryption keys, decryption might fail.

		[Optional] If used, this must be set to a comma-separated list
		of files, each of which containing a single certificate in PEM
		format to be included in the S/MIME message in addition to the
		smime-sign-cert certificate.  This is most useful for long
		certificate chains if it is desired to aid the receiving
		party's verification process.

		Overrides smime-sign-include-certs for the specific addresses.
		Refer to the discussion of smime-sign-cert-user@host for more
		on this topic.

     smtp	[Optional] Normally Mail invokes sendmail(1) directly to
		transfer messages.  If the smtp variable is set, a SMTP con‐
		nection to the server specified by the value of this variable
		is used instead.  If the SMTP server does not use the standard
		port, a value of `server:port' can be given, with `port' as a
		name or as a number.

		There are two possible methods to get SSL/TLS encrypted SMTP
		sessions: First, the `STARTTLS' command can be used to encrypt
		a session after it has been initiated, but before any user-
		related data has been sent; see smtp-use-starttls above.  Sec‐
		ond, some servers accept sessions that are encrypted from
		begin on.  This mode is configured by assigning
		`smtps://server[:port]' to the smtp variable.

		The SMTP transfer is executed in a child process, which runs
		asynchronously unless either the sendwait or the verbose vari‐
		able is set.  If it receives a TERM signal, it will abort and
		save the message to DEAD.

     smtp-auth	[Optional] Sets the SMTP authentication method.	 If set to
		`login', or if unset and smtp-auth-user is set, `AUTH LOGIN'
		is used.  If set to `cram-md5', `AUTH CRAM-MD5' is used; if
		set to `plain', `AUTH PLAIN' is used.  Otherwise, no SMTP
		authentication is performed.

		Overrides smtp-auth for specific values of sender addresses,
		dependend upon the variable from.

		[Optional] Sets the global password for `SMTP AUTH'.  Both
		user and password have to be given for `AUTH LOGIN' and `AUTH

		Overrides smtp-auth-password for specific values of sender
		addresses, dependent upon the variable from.

		[Optional] Sets the global user name for `SMTP AUTH'.  Both
		user and password have to be given for `AUTH LOGIN' and `AUTH
		CRAM-MD5'.  If this variable is set but neither
		smtp-auth-password nor a matching smtp-auth-password-user@host
		can be found, Mail will ask for a password on the user's ter‐

		Overrides smtp-auth-user for specific values of sender
		addresses, dependent upon the variable from.

		[Optional] The path to the spam detector.  Note that the path
		is not expanded, but used "as is".  A fallback path will have
		been compiled into the Mail binary if the spamc(1) executable
		had been found during compilation.

     spam-host	[Optional] Can be used to specify the host on which spamd(1)
		listens for connections; if not set, defaults to `localhost'.

		[Optional] Spam detectors like spamc(1) decline to work with
		messages which exceed a specific size; if this variable is set
		then Mail won't even try to pass messages which exceed the
		given limit.  The default is 420000 bytes.

     spam-port	[Optional] Can be used to explicitly specify the port on which
		spamd(1) listens for connections.

		[Optional] If the spam detector listens on a path-based UNIX
		domain socket, then setting this variable to the fully quali‐
		fied path will force its usage for communication.

     spam-user	[Optional] This can be used to support multiple, per-used con‐
		figuration files of the spam detector.	Note that Mail doesn't
		automatically set this to reflect a possibly set -u option.

		[Optional] Specifies a directory with CA certificates in PEM
		(Pricacy Enhanced Mail) for verification of of SSL/TLS server
		certificates.  See SSL_CTX_load_verify_locations(3) for more

		[Optional] Specifies a file with CA certificates in PEM format
		for verification of SSL/TLS server certificates.  See
		SSL_CTX_load_verify_locations(3) for more information.

     ssl-cert	[Optional] Sets the file name for a SSL/TLS client certificate
		required by some servers.

		Sets an account-specific file name for a SSL/TLS client cer‐
		tificate required by some servers.  Overrides ssl-cert for the
		specified account.

		[Optional] Specifies a list of ciphers for SSL/TLS connec‐
		tions.	See ciphers(1) for more information.

		[Optional] Specifies a file that contains a CRL in PEM format
		to use when verifying SSL/TLS server certificates.

		[Optional] Specifies a directory that contains files with CRLs
		in PEM format to use when verifying SSL/TLS server certifi‐

     ssl-key	[Optional] Sets the file name for the private key of a SSL/TLS
		client certificate.  If unset, the name of the certificate
		file is used.  The file is expected to be in PEM format.

		Sets an account-specific file name for the private key of a
		SSL/TLS client certificate.  Overrides ssl-key for the speci‐
		fied account.

		[Optional] Selects the used TLS/SSL protocol version.  The
		actually available protocol versions depend on the TLS/SSL
		library that Mail uses; possible values are, from newest to
		oldest: `tls1.2', `tls1.1', `tls1', `ssl3' and `ssl2'.

		Setting ssl-method to any of these values will fixate the used
		protocol, which means that connections will fail if the server
		doesn't support it.  The value `auto', which is the default,
		chooses a compatibility method that automatically uses the
		newest protocol version that the server is capable to under‐

		It has to be noted that `auto' is used as a fallback method if
		the actual setting of ssl-method isn't supported by the used
		TLS/SSL library — in this case an error message will be
		printed first, however.

		Overrides ssl-method for a specific account.

		[Optional] Gives the pathname to an entropy daemon socket, see

		[Optional] Gives the pathname to a file with entropy data, see
		RAND_load_file(3).  If the file is a regular file writable by
		the invoking user, new data is written to it after it has been

		[Optional] Sets the action to be performed if an error occurs
		during SSL/TLS server certificate validation.  Valid values
		are `strict' (fail and close connection immediately), `ask'
		(ask whether to continue on standard input), `warn' (print a
		warning and continue), `ignore' (do not perform validation).
		The default is `ask'.

		Overrides ssl-verify for a specific account.

		If only set without an assigned value, then this option
		inhibits the generation of the `Message-Id:' and `User-Agent:'
		header fields that include obvious references to Mail.	There
		are two pitfalls associated with this: First, the message id
		of outgoing messages is not known anymore.  Second, an expert
		may still use the remaining information in the header to track
		down the originating mail user agent.  If set to the value
		`noagent', then the mentioned `Message-Id:' suppression
		doesn't occur.

     toplines	If defined, gives the number of lines of a message to be
		printed out with the top command; normally, the first five
		lines are printed.

		The character set of the terminal Mail operates on, and the
		one and only supported character set that Mail can use if no
		character set conversion capabilities have been compiled into
		it, in which case it defaults to `ISO-8859-1' unless it can
		deduce a value from the `LC_CTYPE' locale environment.	Refer
		to the section Character sets for the complete picture about
		character sets.

     VISUAL	Pathname of the text editor to use in the visual command and
		`~v' tilde escape.

     Besides the variables described above, Mail uses the following environ‐
     ment variables:

	     The user's preferred width in column positions for the terminal
	     screen or window (only used during startup).

     HOME    The user's home directory.

	     See locale(7).

     LESS    [Optional] When a pager is started, this variable is set to the
	     string `FRXi' unless it already exists in the environment, in
	     which case it is left alone.

     LINES   The user's preferred number of lines on a page or the vertical
	     screen or window size in lines (only used during startup).

     MAILRC  Is used as a startup file instead of ~/.mailrc if set.  When Mail
	     scripts are invoked on behalf of other users, this variable
	     should be set to /dev/null to avoid side-effects from reading
	     their configuration files.

     NAILRC  If this variable is set and MAILRC is not, it is treated as a
	     startup configuration file and read.

	     If this variable is set then reading of /etc/mail.rc at startup
	     is inhibited, i.e., the same effect is achieved as if Mail had
	     been started up with the option -n.

     SYSV3   Changes the letters printed in the first column of a header sum‐

     TERM    [Optional] The terminal type for which output is to be prepared.

     TMPDIR  Used as directory for temporary files instead of /tmp, if set.

     USER    Can be used to force identification as USER, i.e., identical to
	     the -u command line option.

     ~/.mailrc	      File giving initial commands.

     /etc/mail.rc     System wide initialization file.

     ~/.mime.types    Personal MIME types.

     /etc/mime.types  System wide MIME types.

   Getting started
     The Mail command has two distinct usages, according to whether one wants
     to send or receive mail.  Sending mail is simple: to send a message to a
     user whose email address is, say, `<bill@host.example>', use the shell

	   $ mail bill@host.example

     then type your message.  Mail will prompt you for a message `Subject:'
     first; after that, lines typed by you form the body of the message.  When
     you reach the end of the message, type an EOT (`control-D') at the begin‐
     ning of a line, which will cause Mail to echo `EOT' and return you to the

     If, while you are composing the message you decide that you do not wish
     to send it after all, you can abort the letter by typing two `RUBOUT'
     (interrupt, `control-C') characters.  Typing a single `RUBOUT' causes
     Mail to print `(Interrupt -- one more to kill letter)'. Typing a second
     `RUBOUT' causes Mail to save your partial letter on the file DEAD and
     abort the letter.	Once you have sent mail to someone, there is no way to
     undo the act, so be careful.

     If you want to send the same message to several other people, you can
     list their email addresses on the command line.

	   $ mail sam@workstation.example bob@server.example
	   Subject: Fees
	   Tuition fees are due next Friday.  Don't forget!

     will sendout to `<sam@workstation.example>' and `<bob@server.example>'.
     To read your mail, simply type

	   $ mail

     Mail will respond by typing its version number and date and then listing
     the messages you have waiting.  Then it will type a prompt and await your
     command.  The messages are assigned numbers starting with 1 – you refer
     to the messages with these numbers.  Mail keeps track of which messages
     are `new' (have been sent since you last read your mail) and `read' (have
     been read by you).	 New messages have an `N' next to them in the header
     listing and old, but unread messages have a `U' next to them.  Mail keeps
     track of new/old and read/unread messages by putting a header field
     called `Status' into your messages.

     To look at a specific message, use the type command, which may be abbre‐
     viated to simply `t'.  For example, if you had the following messages:

	   O 1 drfoo@myhost.example Wed Sep  1 19:52   5/421 "Fees"
	   O 2 sam@friends.example  Thu Sep  2 00:08  30/895

     you could examine the first message by giving the command:

	   type 1

     which might cause Mail to respond with, for example:

	   [-- Message	1 -- 5 lines, 421 bytes --]:
	   From drfoo@myhost.example Wed Sep  1 19:52:25 2004
	   Subject: Fees
	   Status: R

	   Tuition fees are due next Wednesday.	 Don't forget!

     Many Mail commands that operate on messages take a message number as an
     argument, just as the shown type command.	For these commands, there is a
     notion of a current message.  When you enter the Mail program, the cur‐
     rent message is initially the first (or the first recent) one.  Thus, you
     can often omit the message number and use, for example, `t` to type the
     current message.  As a further shorthand, you can type a message by sim‐
     ply giving its message number – hence `1` would type the first message.

     Frequently, it is useful to read the messages in your mailbox in order,
     one after another.	 You can read the next message in Mail by simply typ‐
     ing a newline.  As a special case, you can type a newline as your first
     command to Mail to type the first message.

     If, after typing a message, you wish to immediately send a reply, you can
     do so with the command reply.  This command, like type, takes a message
     number as an argument.  Mail then begins a message addressed to the user
     who sent you the message and let you type in your letter in reply, fol‐
     lowed by a `<control-D>' at the beginning of a line, as before.

     Note that Mail copies the subject header from the original message.  This
     is useful in that correspondence about a particular matter will tend to
     retain the same subject heading, making it easy to recognize.  If there
     are other header fields in the message, like `Cc:', the information found
     will also be used.

     Sometimes you will receive a message that has been sent to several people
     and wish to reply only to the person who sent it.	Reply (with a capital
     `R') replies to a message, but sends a copy to the sender only.

     If you wish, while reading your mail, to send a message to someone, but
     not as a reply to one of your messages, you can send the message directly
     with the mail command, which takes as arguments the names of the recipi‐
     ents you wish to send to.	For example, to send a message to

	   mail frank@machine.example

     To delete a message from the mail folder, you can use the command delete.
     In addition to not saving deleted messages, Mail will not let you type
     them, either.  The effect is to make the message disappear altogether,
     along with its number.

     Many features of Mail can be tailored to your liking with the set com‐
     mand; it has two forms, depending on whether you are setting a `binary'
     or a `valued' option.  Binary options are either on or off – for example,
     the askcc option informs Mail that each time you send a message, you want
     it to prompt you for a `Cc:' header to be included in the message.	 To
     set the askcc option, you would type

	   set askcc

     Valued options are values which Mail uses to adapt to your tastes.	 For
     example, the record option tells Mail where to save messages sent by you,
     and is specified by, e.g.,

	   set record=Sent

     Note that no spaces are allowed in `set record=Sent'.

     Mail includes a simple facility for maintaining groups of messages
     together in folders.  To use the folder facility, you must tell Mail
     where you wish to keep your folders.  Each folder of messages will be a
     single file.  For convenience, all of your folders are kept in a single
     directory of your choosing.  To tell Mail where your folder directory is,
     put a line of the form

	   set folder=letters

     in your ~/.mailrc file.  If, as in the example above, your folder direc‐
     tory does not begin with a `/', Mail will assume that your folder direc‐
     tory is to be found starting from your home directory.

     Anywhere a file name is expected, you can use a folder name, preceded
     with `+'.	For example, to put a message into a folder with the save com‐
     mand, you can use:

	   save +classwork

     to save the current message in the `classwork' folder.  If the `class‐
     work' folder does not yet exist, it will be created.  Note that messages
     which are saved with the save command are automatically removed from your
     system mailbox.

     In order to make a copy of a message in a folder without causing that
     message to be removed from your system mailbox, use the copy command,
     which is identical in all other respects to the save command.

     The folder command can be used to direct Mail to the contents of a dif‐
     ferent folder.  For example,

	   folder +classwork

     directs Mail to read the contents of the `classwork' folder.  All of the
     commands that you can use on your system mailbox are also applicable to
     folders, including type, delete, and reply.  To inquire which folder you
     are currently editing, use `folder' without arguments.  And to list your
     current set of folders, use the folders command.

     Finally, the help command is available to print out a brief summary of
     the most important Mail commands.

     While typing in a message to be sent to others it is often useful to be
     able to invoke the text editor on the partial message, print the message,
     execute a shell command, or do some other auxiliary function.  Mail pro‐
     vides these capabilities through `tilde escapes', which consist of a
     tilde (`~') at the beginning of a line, followed by a single character
     which indicates the function to be performed.  For example, to print the
     text of the message so far, use:


     which will print a line of dashes, the recipients of your message, and
     the text of the message so far.  A list of the most important tilde
     escapes is available with `~?'.

   IMAP or POP3 client setup
     [Optional] First you need the following data from your ISP: the host name
     of the IMAP or POP3 server, user name and password for this server, and a
     notice whether the server uses SSL/TLS encryption.	 Assuming the SSL/TLS
     secured host name of your IMAP account is `server.myisp.example' and your
     user name for that server is `mylogin', you could refer to this account
     using the folder command or the -f command line option with


     (This string is not necessarily the same as your Internet mail address.)
     Even if the server does not accept IMAPS or POP3S connections, it is pos‐
     sible that it supports the `STARTTLS' method of upgrading already con‐
     nected, but not yet authenticated sessions to use SSL/TLS encryption.
     The only reliable method to see if this works is to try it; enter one of

	   set imap-use-starttls
	   set pop3-use-starttls

     before you initiate the connection, dependent on the actual protocol.

     As you probably want messages to be deleted from this account after sav‐
     ing them, prefix it with `%:'.  The shortcut command can be used to avoid
     typing that many characters every time you want to connect:

	   shortcut myisp %:imaps://mylogin@server.myisp.example

     You might want to put this string into a startup file.  shortcut is one
     of those commands that are specific to Mail and will thus confuse other
     implementations of POSIX mailx(1), so it should possibly not be placed in
     ~/.mailrc.	 Instead, put

	   set NAIL_EXTRA_RC=.mailrc

     in ~/.mailrc and create a file ~/.mailrc containing all the commands that
     are specific to Mail.  You can then access your remote mailbox by invok‐

	   mail -f myisp

     on the command line, or by executing

	   fi myisp

     within Mail.  If you want to use more than one IMAP mailbox on a server,
     or if you want to use the IMAP server for mail storage too, the account
     command (which is also Mail-specific) is possibly more appropriate.  You
     can put the following in ~/.mailrc:

	   account myisp {
	      set folder=imaps://mylogin@server.myisp.example
	      set record=+Sent MBOX=+mbox outfolder

     and can then access incoming mail for this account by invoking `mail -A
     myisp' on the command line or by executing `ac myisp' within Mail.	 After
     that, a command like `copy 1 +otherfolder' will refer to `otherfolder' on
     the IMAP server.  In particular, `fi &' will change to the `mbox' folder,
     and `fi +Sent' will show your recorded sent mail, with both folders
     located on the IMAP server.

     Mail will ask you for a password string each time you connect to a remote
     account.  If you can reasonably trust the security of your workstation,
     you can give this password in the startup file as

	   set password-mylogin@server.myisp.example="SECRET"

     You should change the permissions of this file to 0600, see chmod(1).

     Mail supports different authentication methods for both IMAP and POP3.
     If Kerberos is used at your location, you can try to activate (the
     optional) GSSAPI-based authentication via

	   set imap-auth=gssapi

     The advantage of this method is that Mail doesn't need to know your pass‐
     word at all, nor does it have to send sensitive data over the network.
     If that isn't possible, try to use authentication methods that at least
     avoid sending the password in clear over the wire, which is especially
     important if SSL/TLS cannot be used, e.g.,

	   set imap-auth=cram-md5

     For POP3 Mail will try to use the `APOP' mechanism automatically unless
     explicitly disabled.  If the server does not offer any such authentica‐
     tion methods, conventional user/password based authentication must be
     used.  It is sometimes helpful, especially when setting up an account or
     when there are authentification problems, to enable verbosity by setting
     the verbose option – Mail will display all data sent to the server in
     clear text on the screen when this option is set.	(Because this may also
     include passwords you should take care that no unauthorized person can
     look at your terminal when this option is set.)

     If you regularly use the same workstation to access IMAP accounts, you
     can greatly enhance performance by enabling local caching of IMAP mes‐
     sages.  For any message that has been fully or partially fetched from the
     server, a local copy is made and is used when the message is accessed
     again, so most data is transferred over the network once only.  To enable
     the IMAP cache, select a local directory name and put

	   set imap-cache=~/localdirectory

     in the (Mail-specific) startup file.  All files within that directory can
     be overwritten or deleted by Mail at any time, so you should not use the
     directory to store other information.

     Once the cache contains some messages, it is not strictly necessary any‐
     more to open a connection to the IMAP server to access them.  When Mail
     is invoked with the option -D, or when the disconnected variable is set,
     only cached data is used for any folder you open.	Messages that have not
     yet been completely cached are not available then, but all other messages
     can be handled as usual.  Changes made to IMAP mailboxes in disconnected
     mode are committed to the IMAP server next time it is used in online
     mode.  Synchronizing the local status with the status on the server is
     thus partially within your responsibility; if you forget to initiate a
     connection to the server again before you leave your location, changes
     made on one workstation are not available on others.  Also if you alter
     IMAP mailboxes from a workstation while uncommitted changes are still
     pending on another, the latter data may become invalid.  The same might
     also happen because of internal server status changes.  You should thus
     carefully evaluate this feature in your environment before you rely on

     Many servers will close the connection after a short period of inactivity
     – use one of

	   set pop3-keepalive=30
	   set imap-keepalive=240

     to send a keepalive message each 30 seconds for POP3, or each 4 minutes
     for IMAP.

     If you encounter problems connecting to a SSL/TLS server, try the
     ssl-rand-egd and ssl-rand-file variables (see the OpenSSL FAQ for more
     information) or specify the protocol version with ssl-method.  Contact
     your ISP if you need a client certificate or if verification of the
     server certificate fails.	If the failed certificate is indeed valid,
     fetch its CA certificate by executing the shell command

	   $ </dev/null openssl s_client -showcerts -connect \
		 server.myisp.example:imaps 2>&1 | tee log.txt

     (see s_client(1)) and put it into the file specified with ssl-ca-file.
     The data you need is located at the end of the certificate chain within
     (and including) the `BEGIN CERTIFICATE' and `END CERTIFICATE' lines.
     Note that the example above is insecure!  One should use the `-verify'
     and `-CAfile' options of s_client(1) to be "on the safe side" regarding
     the fetched certificates.

   Reading HTML mail
     You need either the elinks(1) or lynx(1) utility or another command-line
     web browser that can write plain text to standard output.

	   set pipe-text/html="elinks -force-html -dump 1"
	   set pipe-text/html="lynx -stdin -dump -force_html"

     will cause HTML message parts to be converted into a more friendly form.

   Viewing PDF attachments
     Most PDF viewers do not accept input directly from a pipe.	 It is thus
     necessary to store the attachment in a temporary file first:

	   set pipe-application/pdf="@&cat >/tmp/mail$$.pdf; \
		 acroread /tmp/mail$$.pdf; rm /tmp/mail$$.pdf"

     Note that security defects are discovered in PDF viewers from time to
     time.  Automatical command execution like this can compromise your system
     security, in particular if you stay not always informed about such

   Signed and encrypted messages with S/MIME
     [Optional] S/MIME provides two central mechanisms: message signing and
     message encryption.  A signed message contains some data in addition to
     the regular text.	The data can be used to verify that the message was
     sent using a valid certificate, that the sender's address in the message
     header matches that in the certificate, and that the message text has not
     been altered.  Signing a message does not change its regular text; it can
     be read regardless of whether the recipient's software is able to handle
     S/MIME.  It is thus usually possible to sign all outgoing messages if so
     desired.  Encryption, in contrast, makes the message text invisible for
     all people except those who have access to the secret decryption key.  To
     encrypt a message, the specific recipient's public encryption key must be
     known.  It is thus not possible to send encrypted mail to people unless
     their key has been retrieved from either previous communication or public
     key directories.  A message should always be signed before it is
     encrypted.	 Otherwise, it is still possible that the encrypted message
     text is altered.

     A central concept to S/MIME is that of the certification authority (CA).
     A CA is a trusted institution that issues certificates.  For each of
     these certificates it can be verified that it really originates from the
     CA, provided that the CA's own certificate is previously known.  A set of
     CA certificates is usually delivered with OpenSSL and installed on your
     system.  If you trust the source of your OpenSSL software installation,
     this offers reasonable security for S/MIME on the Internet.  In general,
     a certificate cannot be more secure than the method its CA certificate
     has been retrieved with, though.  Thus if you download a CA certificate
     from the Internet, you can only trust the messages you verify using that
     certificate as much as you trust the download process.

     The first thing you need for participating in S/MIME message exchange is
     your personal certificate, including a private key.  The certificate con‐
     tains public information, in particular your name and your email address,
     and the public key that is used by others to encrypt messages for you,
     and to verify signed messages they supposedly received from you.  The
     certificate is included in each signed message you send.  The private key
     must be kept secret.  It is used to decrypt messages that were previously
     encrypted with your public key, and to sign messages.

     For personal use it is recommended that you get a S/MIME certificate from
     one of the major CAs on the Internet using your WWW browser.  (Many CAs
     offer such certificates for free.)	 You will usually receive a combined
     certificate and private key in PKCS#12 format which Mail does not
     directly accept.  To convert it to PEM format, use the following shell

	   $ openssl pkcs12 -in cert.p12 -out cert.pem -clcerts -nodes

     If you omit the `-nodes' parameter, you can specifiy an additional `PEM
     pass phrase' for protecting the private key.  Mail will then ask you for
     that pass phrase each time it signs or decrypts a message.	 You can then

	   set smime-sign-cert-myname@myisp.example=cert.pem

     to make this private key and certificate known to Mail.  You can now sign
     outgoing messages.	 Just use

	   set smime-sign

     to do so.	From each signed message you send, the recipient can fetch
     your certificate and use it to send encrypted mail back to you.  Accord‐
     ingly if somebody sends you a signed message, you can do the same.	 First
     use the verify command to check the validity of the certificate.  After
     that, retrieve the certificate and tell Mail that it should use it for

	   certsave filename
	   set smime-encrypt-user@host=filename

     You should carefully consider if you prefer to store encrypted messages
     in decrypted form.	 If you do, anybody who has access to your mail fold‐
     ers can read them, but if you do not, you might be unable to read them
     yourself later if you happen to lose your private key.  The decrypt com‐
     mand saves messages in decrypted form, while the save, copy, and move
     commands leave them encrypted.

     Note that neither S/MIME signing nor encryption applies to message sub‐
     jects or other header fields.  Thus they may not contain sensitive infor‐
     mation for encrypted messages, and cannot be trusted even if the message
     content has been verified.	 When sending signed messages, it is recom‐
     mended to repeat any important header information in the message text.

   Using CRLs with S/MIME or SSL/TLS
     [Optional] Certification authorities (CAs) issue certificate revocation
     lists (CRLs) on a regular basis.  These lists contain the serial numbers
     of certificates that have been declared invalid after they have been
     issued.  Such usually happens because the private key for the certificate
     has been compromised, because the owner of the certificate has left the
     organization that is mentioned in the certificate, etc.  To seriously use
     S/MIME or SSL/TLS verification, an up-to-date CRL is required for each
     trusted CA.  There is otherwise no method to distinguish between valid
     and invalidated certificates.  Mail currently offers no mechanism to
     fetch CRLs, nor to access them on the Internet, so you have to retrieve
     them by some external mechanism.

     Mail accepts CRLs in PEM format only; CRLs in DER format must be con‐
     verted, like, e.g.:

	   $ openssl crl -inform DER -in crl.der -out crl.pem

     To tell Mail about the CRLs, a directory that contains all CRL files (and
     no other files) must be created.  The smime-crl-dir or ssl-crl-dir vari‐
     ables, respectively, must then be set to point to that directory.	After
     that, Mail requires a CRL to be present for each CA that is used to ver‐
     ify a certificate.

   Handling spam
     [Optional] Mail can make use of spam detection and learning facilities –
     more precisely, SpamAssassin (<>).  A very
     comprehensive documentation of spamassassin(1) can be found at the
     O'Reilly Commons (‐

     Currently Mail supports interaction with spamassassin(1) only via its
     daemonized spamd(1) / spamc(1) server / client pair, which means that, in
     order to detect and work with spam through Mail, an instance of the
     spamd(1) daemon must be running (the examples are equivalent):

	   $ spamd -i localhost:2142 -i /tmp/.spamsock -d [-L] [-l]
	   $ spamd --listen=localhost:2142 --listen=/tmp/.spamsock \
	       --daemonize [--local] [--allow-tell]

     Note that if spamd(1) should only listen on a local, path-based UNIX
     domain socket instead of offering its service over the network, it maybe
     necessary to use a single --socketpath option instead of the shown
     --listen.	In order to support training of the Bayesian classifier
     through Mail, spamd(1) must have been started with the --allow-tell

     Once spamd(1) is running Mail can classify messages by using the client
     side program, spamc(1), as in:

	   $ mail -Sspam-command=/usr/local/bin/spamc \
	       -Sspam-socket=/tmp/.spamsock -Sspam-maxsize=500000

     The commands offered are spamclear and spamset, which simply set an `is-
     spam' flag that can be used for, e.g., message selection, spamrate, which
     passes messages through to the spam detector in order to gain a spam
     score and conditionally set the `is-spam' flag accordingly, as well as
     the Bayesian filter related spamforget, spamham and spamspam.

     Because messages must exist on local storage in order to be scored (or
     used for Bayesian filter training), it is possibly a good idea to perform
     the local spam check last:

	   define spamdelhook {
		   # Server side DCC
		   spamset (header x-dcc-brand-metrics "bulk")
		   # Server-side spamassassin(1)
		   spamset (header x-spam-flag "YES")
		   del :s # TODO we HAVE to be able to do `spamrate :u ! :s'
		   # And finally the local spamc(1)
		   spamrate :u
		   del :s
	   set folder-hook-FOLDER=spamdelhook

     See also the documentation for the variables spam-command, spam-host,
     spam-port, spam-socket, spam-user and spam-maxsize.

   Sending mail from scripts
     If you want to send mail from scripts, you must be aware that Mail reads
     the user's configuration files by default.	 So unless your script is only
     intended for your own personal use (as, e.g., a cron job), you need to
     circumvent this:

	   MAILRC=/dev/null mail -n

     You then need to create a script-local configuration for Mail.  This can
     be done by either pointing the MAILRC variable to a custom configuration
     file, by passing the configuration in environment variables, or by using
     the -S command line option to specify options.  Since many configuration
     options are not valid shell variables, the env(1) command is useful if
     the approach via environment variables is used:

	   env MAILRC=/dev/null from=scriptreply@domain smtp=host \
	       smtp-auth-user=login smtp-auth-password=secret \
	       smtp-auth=login mail -n -s "subject" \
	       -a attachment_file recipient@domain < content_file

     bzip2(1), file(1), fmt(1), gzip(1), less(1), more(1), newaliases(1),
     openssl(1), printf(1), sendmail(1), sh(1,) spamassassin(1), spamc(1),
     spamd(1), vacation(1), xz(1), editline(3), iconv(3), readline(3),
     setlocale(3), ssl(3), aliases(5), locale(7), mailaddr(7), re_format(7),

     The character set conversion uses and relies upon the iconv(3) function.
     Its functionality differs widely between the various system environments
     Mail runs on.

     Limitations with IMAP mailboxes are: It is not possible to edit messages,
     but it is possible to append them.	 Thus to edit a message, create a
     local copy of it, edit it, append it, and delete the original.  The line
     count for the header display is only appropriate if the entire message
     has been downloaded from the server.  The marking of messages as `new' is
     performed by the IMAP server; use of the exit command instead of quit
     will not cause it to be reset, and if the newmail variable is unset, mes‐
     sages that arrived during a session will not be in state `new' anymore
     when the folder is opened again.  Also if commands queued in disconnected
     mode are committed, the IMAP server will delete the `new' flag for all
     messages in the changed folder, and new messages will appear as unread
     when it is selected for viewing later.  The `flagged', `answered', and
     `draft' attributes are usually permanent, but some IMAP servers are known
     to drop them without notification.	 Message numbers may change with IMAP
     every time before the prompt is printed if Mail is notified by the server
     that messages have been deleted by some other client or process.  In this
     case, `Expunged n messages' is printed, and message numbers may have

     Limitations with POP3 mailboxes are: It is not possible to edit messages,
     they can only be copied and deleted.  The line count for the header dis‐
     play is only appropriate if the entire message has been downloaded from
     the server.  The status field of a message is maintained by the server
     between connections; some servers do not update it at all, and with a
     server that does, the `exit' command will not cause the message status to
     be reset.	The `newmail' command and the `newmail' variable have no
     effect.  It is not possible to rename or to remove POP3 mailboxes.

     If a `RUBOUT' (interrupt, `control-C') is typed while an IMAP or POP3
     operation is in progress, Mail will wait until the operation can be
     safely aborted, and will then return to the command loop and print the
     prompt again.  When a second `RUBOUT' is typed while Mail is waiting for
     the operation to complete, the operation itself will be cancelled.	 In
     this case, data that has not been fetched yet will have to be fetched
     before the next command can be performed.	If the cancelled operation was
     using an SSL/TLS encrypted channel, an error in the SSL transport will
     very likely result and render the connection unusable.

     As Mail is a mail user agent, it provides only basic SMTP services.  If
     it fails to contact its upstream SMTP server, it will not make further
     attempts to transfer the message at a later time, and it does not leave
     other information about this condition than an error message on the ter‐
     minal and an entry in DEAD.  This is usually not a problem if the SMTP
     server is located in the same local network as the computer on which Mail
     is run.  However, care should be taken when using a remote server of an
     ISP; it might be better to set up a local SMTP server then which just
     acts as a proxy.

     Mail immediately contacts the SMTP server (or sendmail(1)) even when
     operating in disconnected mode.  It would not make much sense for Mail to
     defer outgoing mail since SMTP servers usually provide much more elabo‐
     rated delay handling than Mail could perform as a client.	Thus the rec‐
     ommended setup for sending mail in disconnected mode is to configure a
     local SMTP server such that it sends outgoing mail as soon as an external
     network connection is available again, i.e., to advise it to do that from
     a network startup script.

     A mail command appeared in Version 1 AT&T Unix.  Berkeley Mail was writ‐
     ten in 1978 by Kurt Shoens.  This man page is derived from from The Mail
     Reference Manual originally written by Kurt Shoens.  "Heirloom Mailx"
     enhancements are maintained and documented by Gunnar Ritter.  "S-nail" is
     maintained and documented by Steffen (Daode) Nurpmeso.

     Portions of this text are reprinted and reproduced in electronic form
     from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology –
     Operating System Interface (POSIX), The Open Group Base Specifications
     Issue 6, Copyright © 2001-2003 by the Institute of Electrical and Elec‐
     tronics Engineers, Inc and The Open Group.	 In the event of any discrep‐
     ancy between this version and the original IEEE and The Open Group Stan‐
     dard, the original IEEE and The Open Group Standard is the referee docu‐
     ment.  The original Standard can be obtained online at
     <>.  Redistribution of this
     material is permitted so long as this notice remains intact.

     Kurt Shoens,
     Christos Zoulas,
     Gunnar Ritter,
     Steffen (Daode) Nurpmeso ⟨⟩

     Variables in the environment passed to Mail cannot be unset.

				 Apr 05, 2014

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net