WRITE(1) | General Commands Manual | WRITE(1)

# NAME

`write` — send a message to another user

# SYNOPSIS

`write` | user [ttyname]

# DESCRIPTION

`write` allows you to communicate with other users, by copying lines from your terminal to theirs.

When you run the `write` command, the user you are writing to gets a message of the form:

`Message from yourname@yourhost on yourtty at hh:mm ...`

Any further lines you enter will be copied to the specified user's terminal. If the other user wants to reply, they must run `write` as well.

When you are done, type an end-of-file or interrupt character. The other user will see the message “EOF” indicating that the conversation is over.

You can prevent people (other than the superuser) from writing to you with the mesg(1) command. Some commands, such as pr(1), disallow writing automatically, so that output isn't overwritten.

If the user you want to write to is logged in on more than one terminal, you can specify which terminal to write to by specifying the terminal name as the second operand to the `write` command. Alternatively, you can let `write` select one of the terminals - it will pick the one with the shortest idle time. This is so that if the user is logged in at work and also dialed up from home, the message will go to the right place.

The traditional protocol for writing to someone is that the string “-o”, either at the end of a line or on a line by itself, means that it's the other person's turn to talk. The string “oo” means that the person believes the conversation to be over.

# ASYNCHRONOUS EVENTS

`SIGINT`
  Terminate `write` and exit with a zero status.

# EXIT STATUS

The `write` utility exits with one of the following values:

0
  Normal behavior.
>0
  The specified user is either not logged in or not accepting messages.

# SEE ALSO

mesg(1), talk(1), who(1)

# STANDARDS

The `write` utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification, except that in this implementation the sender's locale is intentionally ignored in order to avoid sending characters that the receiving terminal may be unable to display, or even bytes that might break the receiving terminal's state. Non-ASCII characters are written as ‘?’.

# HISTORY

A `write` command appeared in Version 1 AT&T UNIX.

# BUGS

The “EOF” message seen when the other `write` terminates is indistinguishable from that party simply typing “EOF” to make you believe that any future messages did not come from them. Especially messages such as:

`[1] Done rm -rf *`

September 6, 2019 | Debian