talk to another user

talk uname [ttyname

A visual communication program which copies lines from your terminal to that of another user.

To talk to a user on another host, uname is of the form user@host.

To talk to a user who is logged in more than once, ttyname use to indicate the appropriate terminal name, where ttyname is of the form
ttyXX or pts/X.

When first called, talk contacts the talk daemon on the other user's machine, which sends the message:

Message from TalkDaemon@his_machine...
talk: connection requested by your_name@your_machine.
talk: respond with: talk your_name@your_machine
to that user. At this point, he then replies by typing

talk your_name@your_machine

It doesn't matter from which machine the recipient replies, as long as his login name is the same.
Once communication is established, the two parties may type simultaneously; their output will appear in separate windows. Typing control-L (^L) will cause the screen to be reprinted.
The erase, kill line, and word erase characters (normally ^H, ^U, and ^W ) behave normally.
To exit, type the interrupt character (normally ^C); talk then moves the cursor to the bottom of the screen and restores the terminal to its previous state.

netkit-ntalk 0.15 talk supports scrollback; use ␛p and ␛n to scroll your window, and ctrl-p and ctrl-n to scroll the other window.

To block talk requests use mesg n. By default, talk requests are normally not blocked.
Certain commands, nroff, pine, and pr, may block messages temporarily in order to prevent messy output.


/etc/hosts to find the recipient's machine
/var/run/utmp to find the recipient's tty


mail, who, write(1), talkd


The protocol used to communicate with the talk daemon is braindead.

Also, the version of talk(1) released with 4.2BSD uses a different and even more braindead protocol that is completely incompatible. Some vendor Unixes (particularly those from Sun) have been found to use this old protocol.

Old versions of talk may have trouble running on machines with more than one IP address, such as machines with dynamic SLIP or PPP connections. This problem is fixed as of netkit-ntalk 0.11, but may affect people you are trying to communicate with. Linux NetKit (0.17)