


mail(1)                   User Commands                   mail(1)



NAME
     mail, rmail - read mail or send mail to users

SYNOPSIS
  Sending mail
     mail [ -tw ] [ -m _m_e_s_s_a_g_e__t_y_p_e ] _r_e_c_i_p_i_e_n_t...

     rmail [ -tw ] [ -m _m_e_s_s_a_g_e__t_y_p_e ] _r_e_c_i_p_i_e_n_t...

  Reading mail
     mail [ -ehpPqr ] [ -f _f_i_l_e ]

  Debugging
     mail [ -x _d_e_b_u_g__l_e_v_e_l ] [ _o_t_h_e_r__m_a_i_l__o_p_t_i_o_n_s ] _r_e_c_i_p_i_e_n_t...

AVAILABILITY
     SUNWcsu

DESCRIPTION
     A _r_e_c_i_p_i_e_n_t is usually a user name recognized  by  login(1).
     When  _r_e_c_i_p_i_e_n_ts  are named, mail assumes a message is being
     sent.  It reads from the standard input up to an end-of-file
     (CTRL-D)  or,  if  reading  from a terminal device, until it
     reads a line consisting of just a period.   When  either  of
     those  indicators  is  received, mail adds the _l_e_t_t_e_r to the
     _m_a_i_l_f_i_l_e for each _r_e_c_i_p_i_e_n_t.

     A _l_e_t_t_e_r is composed of some  _h_e_a_d_e_r  _l_i_n_e_s  followed  by  a
     blank line followed by the _m_e_s_s_a_g_e _c_o_n_t_e_n_t. The _h_e_a_d_e_r _l_i_n_e_s
     section of the letter consists of one  or  more  UNIX  post-
     marks:

          From     _s_e_n_d_e_r     _d_a_t_e__a_n_d__t_i_m_e     [remote      from
          _r_e_m_o_t_e__s_y_s_t_e_m__n_a_m_e]

     followed by one or more standardized message header lines of
     the form:

          _k_e_y_w_o_r_d-_n_a_m_e: [_p_r_i_n_t_a_b_l_e _t_e_x_t]

     where _k_e_y_w_o_r_d-_n_a_m_e  is  comprised  of  any  printable,  non-
     whitespace  characters  other  than colon (`:').  A Content-
     Length: header line, indicating the number of bytes  in  the
     _m_e_s_s_a_g_e  _c_o_n_t_e_n_t  will  always  be present unless the letter
     consists of only header lines with no  message  content.   A
     Content-Type:  header  line  that  describes the type of the
     _m_e_s_s_a_g_e _c_o_n_t_e_n_t (such as text, binary, multipart, etc.) will
     also  be  present  unless the letter consists of only header
     lines with no message content.  Header lines may be  contin-
     ued  on  the  following  line if that line starts with white
     space.




SunOS 5.5           Last change: 21 Feb 1995                    1






mail(1)                   User Commands                   mail(1)



OPTIONS
  Sending mail
     The following command-line arguments affect sending mail:

     -m _m_e_s_s_a_g_e__t_y_p_e
               A Message-Type:  line  is  added  to  the  message
               header with the value of _m_e_s_s_a_g_e__t_y_p_e.

     -t         A To: line is added to  the  message  header  for
               each of the intended _r_e_c_i_p_i_e_n_ts.

     -w         A letter is sent to a  remote  recipient  without
               waiting  for the completion of the remote transfer
               program.

     If a letter is found to be undeliverable, it is returned  to
     the  sender  with diagnostics that indicate the location and
     nature of the failure.  If mail is interrupted during input,
     the  message is saved in the file dead.letter to allow edit-
     ing and resending.  dead.letter is always appended to,  thus
     preserving  any  previous  contents.  The initial attempt to
     append to (or create) dead.letter will  be  in  the  current
     directory.   If  this fails, dead.letter will be appended to
     (or created in) the user's login directory.  If  the  second
     attempt also fails, no dead.letter processing will be done.

     rmail only permits the sending of mail; uucp(1C) uses  rmail
     as  a  security  precaution.   Any application programs that
     generate mail messages should be sure to invoke rmail rather
     than mail for message transport and/or delivery.

     If the local  system  has  the  Basic  Networking  Utilities
     installed,  mail may be sent to a recipient on a remote sys-
     tem.  There are numerous ways to address mail to  recipients
     on  remote  systems  depending  on  the transport mechanisms
     available to the  local  system.   The  two  most  prevalent
     addressing schemes are UUCP-style and Domain-style.

     UUCP-style addressing
                    Remote recipients are specified by  prefixing
                    the  recipient  name  with  the remote system
                    name  and  an  exclamation  point,  such   as
                    sysa!user.  If  csh(1)  is the default shell,
                    sysa\!user should be used.  A series of  sys-
                    tem names separated by exclamation points can
                    be  used  to  direct  a  letter  through   an
                    extended network (such as sysa!sysb!sysc!user
                    or sysa\!sysb\!sysc\!user ).

     Domain-style addressing
                    Remote recipients are specified by  appending
                    an  ` @' and domain (and possibly sub-domain)



SunOS 5.5           Last change: 21 Feb 1995                    2






mail(1)                   User Commands                   mail(1)



                    information to the recipient  name  (such  as
                    user@sf.att.com).  (The local system adminis-
                    trator should be  consulted  for  details  on
                    which addressing conventions are available on
                    the local system.)

  Reading Mail
     The following command-line arguments affect reading mail:

     -e              Mail is not printed.  An exit status of 0 is
                    returned  if the user has mail; otherwise, an
                    exit status of 1 is returned.

     -h              A window of headers are initially  displayed
                    rather  than the latest message.  The display
                    is followed by the ? prompt.

     -p              All messages are printed  without  prompting
                    for disposition.

     -P              All messages are  printed  with  _a_l_l  header
                    lines  displayed,  rather  than  the  default
                    selective header line display.

     -q              mail terminates after interrupts.   Normally
                    an  interrupt  causes only the termination of
                    the message being printed.

     -r              Messages are printed in first-in,  first-out
                    order.

     -f _f_i_l_e         mail uses _f_i_l_e (such as mbox) instead of the
                    default _m_a_i_l_f_i_l_e.

     mail, unless otherwise influenced by command-line arguments,
     prints  a  user's mail messages in last-in, first-out order.
     The default mode for printing messages is  to  display  only
     those  header  lines  of immediate interest.  These include,
     but are not limited to, the UNIX From and  >From  postmarks,
     From:,  Date:,  Subject:,  and Content-Length: header lines,
     and any recipient header lines such as To:, Cc:,  Bcc:,  and
     so  forth.  After the header lines have been displayed, mail
     will display the contents (body) of the message only  if  it
     contains  no  unprintable  characters.  Otherwise, mail will
     issue a warning statement about the  message  having  binary
     content  and not display the content.  (This may be overrid-
     den via the p command.  See below.)

     For each message, the user is prompted with a ? and  a  line
     is read from the standard input.  The following commands are
     available to determine the disposition of the message:




SunOS 5.5           Last change: 21 Feb 1995                    3






mail(1)                   User Commands                   mail(1)



     #                   Print the number of the current message.

     -                    Print previous message.

     <new-line>,+, or n  Print the next message.

     !_c_o_m_m_a_n_d            Escape to the shell to do _c_o_m_m_a_n_d.

     a                   Print message that  arrived  during  the
                         mail session.

     d, or dp            Delete the current message and print the
                         next message.

     d _n                 Delete message number _n.  Do not  go  on
                         to next message.

     dq                  Delete message and quit mail.

     h                   Display  a  window  of  headers   around
                         current message.

     h _n                 Display a window of headers around  mes-
                         sage number _n.

     h a                 Display headers of all messages  in  the
                         user's _m_a_i_l_f_i_l_e.

     h d                 Display headers  of  messages  scheduled
                         for deletion.

     m [ _p_e_r_s_o_n_s ]       Mail (and delete) the current message to
                         the named _p_e_r_s_o_n_s.

     _n                   Print message number _n.

     p                   Print current message again,  overriding
                         any  indications  of  binary  (that  is,
                         unprintable) content.

     P                   Override default brief  mode  and  print
                         current  message  again,  displaying all
                         header lines.

     q, or CTRL-D        Put undeleted mail back in the  _m_a_i_l_f_i_l_e
                         and quit mail.

     r [ _u_s_e_r_s ]         Reply to the sender,  and  other  _u_s_e_rs,
                         then delete the message.

     s [ _f_i_l_e_s ]         Save message in the named _f_i_l_es (mbox is
                         default) and delete the message.



SunOS 5.5           Last change: 21 Feb 1995                    4






mail(1)                   User Commands                   mail(1)



     u [ _n ]             Undelete message number  _n  (default  is
                         last read).

     w [ _f_i_l_e_s ]         Save  message  contents,   without   any
                         header  lines,  in the named _f_i_l_e_s (mbox
                         is default) and delete the message.

     x                   Put  all  mail  back  in  the   _m_a_i_l_f_i_l_e
                         unchanged and exit mail.

     y [ _f_i_l_e_s ]         Same as -w option.

     ?                   Print a command summary.

     When a user logs in, the presence of mail, if any,  is  usu-
     ally  indicated.   Also,  notification  is  made if new mail
     arrives while using mail.

     The  permissions  of  _m_a_i_l_f_i_l_e  may  be  manipulated   using
     chmod(1)  in  two  ways  to alter the function of mail.  The
     other permissions of the  file  may  be  read-write  (0666),
     read-only  (0664), or neither read nor write (0660) to allow
     different levels of privacy.  If changed to other  than  the
     default  (mode  0660),  the file will be preserved even when
     empty to perpetuate the desired permissions.  (The  adminis-
     trator   may  override  this  file  preservation  using  the
     DEL_EMPTY_MAILFILE option of mailcnfg.)

     The group ID of the mailfile must be mail to allow new  mes-
     sages  to be delivered, and the mailfile must be writable by
     group mail.

  Debugging
     The following command-line arguments cause mail  to  provide
     debugging information:

     -x _d_e_b_u_g__l_e_v_e_l       mail creates a  trace  file  containing
                         debugging information.

     The  - x  option  causes  mail  to  create  a   file   named
     /tmp/MLDBG_p_r_o_c_e_s_s__i_d  that  contains  debugging  information
     relating to how mail processed  the  current  message.   The
     absolute  value  of  _d_e_b_u_g__l_e_v_e_l controls the verboseness of
     the  debug  information.   0  implies  no   debugging.    If
     _d_e_b_u_g__l_e_v_e_l  is  greater  than  0,  the  debug  file will be
     retained only if mail encountered some  problem  while  pro-
     cessing  the  message.   If  _d_e_b_u_g__l_e_v_e_l  is less than 0 the
     debug file will always be retained.  The _d_e_b_u_g__l_e_v_e_l  speci-
     fied  via  - x  overrides  any  specification  of  DEBUG  in
     /etc/mail/mailcnfg.  The information  provided  by  the  - x
     option  is  esoteric  and  is probably only useful to system
     administrators.



SunOS 5.5           Last change: 21 Feb 1995                    5






mail(1)                   User Commands                   mail(1)



  Delivery Notification
     Several forms of notification  are  available  for  mail  by
     including one of the following lines in the message header.

     Transport-Options: [ /_o_p_t_i_o_n_s ]

     Default-Options: [ /_o_p_t_i_o_n_s ]

     >To: _r_e_c_i_p_i_e_n_t [ /_o_p_t_i_o_n_s ]

     Where the "/_o_p_t_i_o_n_s" may be one or more of the following:

     /delivery      Inform the sender that the message  was  suc-
                    cessfully  delivered to the _r_e_c_i_p_i_e_n_t's mail-
                    box.

     /nodelivery    Do  not  inform  the  sender  of   successful
                    deliveries.

     /ignore        Do  not   inform   the   sender   of   failed
                    deliveries.

     /return        Inform the sender  if  mail  delivery  fails.
                    Return the failed message to the sender.

     /report        Same as /return except that the original mes-
                    sage is not returned.

     The default is /nodelivery/return.  If contradictory options
     are  used, the first will be recognized and later, conflict-
     ing, terms will be ignored.

OPERANDS
     The following operand is supported for sending mail:

     _r_e_c_i_p_i_e_n_t      A user login name.

ENVIRONMENT
     See environ(5) for descriptions of the following environment
     variables  that  affect  the  execution  of mail:  LC_CTYPE,
     LC_MESSAGES, and NLSPATH.

     TZ             Determine the timezone  used  with  date  and
                    time strings.

EXIT STATUS
     The following exit values are returned:

     0         Successful completion when the user had mail.

     1         The user had no mail or  an  initialization  error
               occurred.



SunOS 5.5           Last change: 21 Feb 1995                    6






mail(1)                   User Commands                   mail(1)



     >1        An error occurred after initialization.

FILES
     dead.letter         unmailable text
     /etc/passwd         to identify sender and locate _r_e_c_i_p_i_e_n_ts
     $HOME/mbox          saved mail
     $MAIL               variable containing path name  of  _m_a_i_l_-
                         _f_i_l_e
     /tmp/ma*             temporary file
     /tmp/MLDBG*          debug trace file
     /var/mail/*.lock     lock for mail directory
     /var/mail/:saved    directory  for  holding  temp  files  to
                         prevent  loss  of data in the event of a
                         system crash
     /var/mail/_u_s_e_r      incoming mail for  _u_s_e_r;  that  is,  the
                         _m_a_i_l_f_i_l_e

SEE ALSO
     chmod(1),    csh(1),    login(1),    mailx(1),     uucp(1C),
     uuencode(1C), vacation(1), write(1), environ(5)

     _S_o_l_a_r_i_s _A_d_v_a_n_c_e_d _U_s_e_r'_s _G_u_i_d_e

NOTES
     The interpretation and resulting action taken because of the
     header lines described in the Delivery Notifications section
     above will only occur if this version of mail  is  installed
     on the system where the delivery (or failure) happens.  Ear-
     lier versions of mail may not support any types of  delivery
     notification.

     Conditions sometimes result in a failure to  remove  a  lock
     file.

     After an interrupt, the next message  may  not  be  printed;
     printing may be forced by typing a p.



















SunOS 5.5           Last change: 21 Feb 1995                    7



