talk(1)

talk1

Talk to another user

Usage

talk [-Hs] person [ttyname]

Overview

talk is a visual communication program which copies lines from your terminal to that of another user.

The command arguments are as follows:

-H

Don't escape characters with the high bit set. This may be useful for certain character sets, but could cause erratic behaviour on some terminals.

-s

Use smooth scrolling in the talk window. The default is to clear the next two rows and jump from the bottom of the window to the top.

person

If you wish to talk to someone on your own machine, then person is just the person's login name. If you wish to talk to a user on another host, then person is of the form ‘user@host’.

ttyname

If you wish to talk to a user who is logged in more than once, the ttyname argument may be used to indicate the appropriate terminal name, where ttyname is of the form ‘ttyXX’.

When first called, talk sends the message

Message from Talk_Daemon@localhost...
talk: connection requested by your_name@your_machine.
talk: respond with: talk your_name@your_machine

to the user you wish to talk to. At this point, the recipient of the message should reply by typing

$ talk  your_name@your_machine

It doesn't matter from which machine the recipient replies, as long as the login name is the same. If the machine is not the one to which the talk request was sent, it is noted on the screen. Once communication is established, the two parties may type simultaneously, with their output appearing in separate windows. Typing control-L (‘^L’) will cause the screen to be reprinted, while the erase, kill, and word kill characters will behave normally. To exit, just type the interrupt character; talk then moves the cursor to the bottom of the screen and restores the terminal to its previous state.

Permission to talk may be denied or granted by use of the mesg(1) command. At the outset talking is allowed. Certain commands, such as pr(1), disallow messages in order to prevent messy output.

Asynchronous events

SIGINT

Terminate talk and exit with a zero status.

Files

/etc/hosts

to find the recipient's machine

/var/run/utmp

to find the recipient's tty

Exit status

The talk utility exits 0 on success, and >0 if either an error occurred or talk is invoked on an unsupported terminal.

Releases

61 releases since OpenBSD 2.1; the text changed 15 times.

  1. 2.1–2.3
  2. 2.4
  3. 2.5
  4. 2.6
  5. 2.7
  6. 2.8
  7. 2.9–3.1
  8. 3.2
  9. 3.3
  10. 3.4–3.5
  11. 3.6–4.1
  12. 4.2–4.4
  13. 4.5–4.8
  14. 4.9–5.5
  15. 5.6–6.1
  16. 6.2–8.0

-H since OpenBSD 3.2; -s since OpenBSD 3.2.

Standards

The talk utility is compliant with the IEEE Std 1003.1-2008 (“POSIX.1”) specification, though its presence is optional.

The flags [-Hs] are extensions to that specification.

History

The talk command appeared in 4.2BSD.

From man 8.0-current-20261101 in OpenBSD 8.0-current (2026-11-01). Parsed by carta from the page's mdoc source.