Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
mail(1)				 User Commands			       mail(1)

       mail, rmail - read mail or send mail to users

   Sending mail
       mail [-tw] [-m message_type] recipient...

       rmail [-tw] [-m message_type] recipient...

   Reading mail
       mail [-ehpPqr] [-f file]

       mail [-x	debug_level] [other_mail_options] recipient...

       A  recipient  is	 usually  a domain style address ("user@machine") or a
       user name recognized by	login(1).  When	 recipients  are  named,  mail
       assumes a message is being sent.	It reads from the standard input up to
       an end-of-file (Control-d) or, if reading from a	terminal device, until
       it reads	a line consisting of just a period. When either	of those indi-
       cators is received, mail	adds the  letter  to  the  mailfile  for  each

       A letter	is composed of some header lines followed by a blank line fol-
       lowed by	the message content. The header	lines section  of  the	letter
       consists	of one or more UNIX postmarks:

	      From sender date_and_time	[remote	from remote_system_name]

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

	       keyword-name: [printable	text]

       where  keyword-name is comprised	of any printable, non-whitespace char-
       acters other than colon (`:'). A	Content-Length:	header line,  indicat-
       ing  the	 number	of bytes in the	message	content	will always be present
       unless the letter consists of only header lines with  no	 message  con-
       tent.  A	 Content-Type: header line that	describes the type of the mes-
       sage content (such as text, binary, multipart, and so on) will also  be
       present unless the letter consists of only header lines with no message
       content.	Header lines may be continued on the following	line  if  that
       line starts with	white space.

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

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

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

       -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  editing	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	 secu-
       rity  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 system. There are	numerous  ways
       to address mail to recipients on	remote systems depending on the	trans-
       port mechanisms available to the	local system. The two  most  prevalent
       addressing schemes are Domain-style and UUCP-style.

       Domain-style addressing
	     Remote  recipients	 are  specified	by appending an	`@' and	domain
	     (and possibly sub-domain) information to the recipient name (such
	     as  (The  local	system administrator should be
	     consulted for details on which addressing conventions are	avail-
	     able on the local system.)

       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 system 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).

   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 lat-
	     est message. The display is followed by the ? prompt.

       -p    All messages are printed without prompting	for disposition.

       -P    All messages are printed with all 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 file
	     mail uses file (such as mbox) instead of the default mailfile.

       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
       overridden 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:

       #     Print the number of the current message.

       -     Print previous message.

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

	     Escape to the shell to do command.

       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	message	number n.

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

       h d   Display headers of	messages scheduled for deletion.

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

       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, dis-
	     playing all header	lines.

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

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

       s [ files ]
	     Save message in the named files (mbox is default) and delete  the

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

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

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

       y [ files ]
	     Same as -w	option.

       ?     Print a command summary.

       When a user logs	in, the	presence of mail, if  any,  is	usually	 indi-
       cated. Also, notification is made if new	mail arrives while using mail.

       The permissions of mailfile 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 administrator may override
       this file preservation using the	DEL_EMPTY_MAILFILE  option  of	mailc-

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

       The following command-line arguments cause mail	to  provide  debugging

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

       The  -x	option causes mail to create a file named /tmp/MLDBGprocess_id
       that contains debugging information relating to how mail	processed  the
       current	message.  The  absolute	value of debug_level controls the ver-
       boseness	 of  the  debug	 information.  0  implies  no  debugging.   If
       debug_level  is greater than 0, the debug file will be retained only if
       mail  encountered  some	problem	 while	processing  the	 message.   If
       debug_level is less than	0, the debug file will always be retained. The
       debug_level specified via -x overrides any specification	 of  DEBUG  in
       /etc/mail/mailcnfg.  The	 information provided by the -x	option is eso-
       teric and is probably only useful to system administrators.

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

       Transport-Options: [ /options ]

       Default-Options:	[ /options ]

       >To: recipient [	/options ]

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

	     Inform  the sender	that the message was successfully delivered to
	     the recipient's mailbox.

	     Do	not inform the sender of successful deliveries.

	     Do	not inform the sender of failed	deliveries.

	     Inform the	sender if mail delivery	fails. Return the failed  mes-
	     sage to the sender.

	     Same as /return except that the original message is not returned.

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

       The following operand is	supported for sending mail:

	     A domain style address ("user@machine") or	user login name	recog-
	     nized by login(1).

       See  largefile(5) for the description of	the behavior of	mail and rmail
       when encountering files greater than or equal  to  2  Gbyte  (  2 **31

       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.

       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.

       >1    An	error occurred after initialization.

	     unmailable	text

	     to	identify sender	and locate recipients

	     saved mail

       $MAIL variable containing path name of mailfile

	     temporary file

	     debug trace file

	     lock for mail directory

	     directory	for  holding temp files	to prevent loss	of data	in the
	     event of a	system crash

	     incoming mail for user; that is, the mailfile

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       |Availability		     |SUNWcsu			   |

       chmod(1), csh(1), login(1),  mailx(1),  uucp(1C),  uuencode(1C),	 vaca-
       tion(1),	write(1), attributes(5), environ(5), largefile(5)

       Solaris Advanced	User's Guide

       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. Earlier 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.9			  10 Mar 2000			       mail(1)


Want to link to this manual page? Use this URL:

home | help