Unix‎ > ‎Solaris‎ > ‎Solaris man pages‎ > ‎1‎ > ‎


     write - write to another user

     write user [terminal]

     The write utility reads lines from the user's standard input
     and  writes them to the terminal of another user. When first
     invoked, it writes the message:

     Message from sender-login-id (sending-terminal) [date]...

     to user. When it has successfully completed the  connection,
     the sender's terminal will be alerted twice to indicate that
     what  the  sender  is  typing  is  being  written   to   the
     recipient's terminal.

     If the recipient wants to reply, this can be accomplished by

     write sender-login-id [sending-terminal]

     upon receipt of the initial  message.  Whenever  a  line  of
     input as delimited by a NL, EOF, or EOL special character is
     accumulated while in canonical input mode,  the  accumulated
     data  will  be written on the other user's terminal. Charac-
     ters are processed as follows:

       o  Typing the alert character will write the alert charac-
          ter to the recipient's terminal.

       o  Typing the erase and kill characters  will  affect  the
          sender's  terminal  in  the  manner  described  by  the
          termios(3C) interface.

       o  Typing the interrupt  or  end-of-file  characters  will
          cause  write  to write an appropriate message (EOT\n in
          the "C" locale) to the recipient's terminal and exit.

       o  Typing characters from LC_CTYPE  classifications  print
          or  space will cause those characters to be sent to the
          recipient's terminal.

       o  When and only  when  the  stty  iexten  local  mode  is
          enabled,  additional  special  control  characters  and
          multi-byte or single-byte characters are  processed  as
          printable    characters   if   their   wide   character
          equivalents are printable.

       o  Typing other non-printable characters will  cause  them
          to  be  written to the recipient's terminal as follows:
          control characters will appear as a `^' followed by the
          appropriate  ASCII  character,  and characters with the
          high-order bit set will appear in "meta" notation.  For
          example,  `\003'  is  displayed  as  `^C' and `\372' as

     To write to a user who is logged in more than once, the ter-
     minal  argument  can  be  used to indicate which terminal to
     write to. Otherwise, the recipient's terminal is  the  first
     writable  instance  of the user found in /usr/adm/utmpx, and
     the following informational message will be written  to  the
     sender's  standard  output,  indicating  which  terminal was

     user is logged on more than one place.
     You are connected to terminal.
     Other locations are:terminal

     Permission to be a recipient  of  a  write  message  can  be
     denied  or  granted  by  use of the mesg utility. However, a
     user's privilege may further constrain the domain of  acces-
     sibility  of  other users' terminals. The write utility will
     fail when the user lacks the appropriate privileges to  per-
     form the requested action.

     If the character ! is found at  the  beginning  of  a  line,
     write  calls  the shell to execute the rest of the line as a

     write runs setgid() (see setuid(2)) to the group ID tty,  in
     order to have write permissions on other user's terminals.

     The following protocol is suggested for  using  write:  when
     you first write to another user, wait for them to write back
     before starting to send. Each person should  end  a  message
     with  a  distinctive  signal  (that is, (o) for ``over'') so
     that the other person knows when to reply. The  signal  (oo)
     (for  ``over and out'') is suggested when conversation is to
     be terminated.

     The following operands are supported:

     user            User (login) name of the person to whom  the
                     message  will  be written. This operand must
                     be of the form returned by the who(1)  util-

     terminal        Terminal identification in the  same  format
                     provided by the who utility.

     See environ(5) for descriptions of the following environment
     variables  that affect the execution of write: LANG, LC_ALL,

     The following exit values are returned:

     0        Successful completion.

     >0       The  addressed  user  is  not  logged  on  or   the
              addressed user denies permission.

     /var/adm/utmpx          user and accounting information  for

     /usr/bin/sh             Bourne shell executable file

     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWcsu                     |
    | CSI                         | enabled                     |
    | Interface Stability         | Standard                    |

     mail(1), mesg(1), pr(1), sh(1), talk(1), who(1), setuid (2),
     termios(3C), attributes(5), environ(5), standards(5)

     user is not logged on

         The person you are trying to write to is not logged on.

     Permission denied

         The person you are trying to write to denies  that  per-
         mission (with mesg).

     Warning: cannot respond, set mesg -y

         Your terminal is set to mesg n and the recipient  cannot
         respond to you.

     Can no longer write to user

         The recipient has denied permission (mesg n)  after  you
         had started writing.

Man pages from Solaris 10 Update 8. See docs.sun.com and www.oracle.com for further documentation and Solaris information.