tail head cat sleep
QR code linking to this page

Manual Pages  — TTYNAME


ttyname, ttyname_r, isatty – get name of associated terminal (tty) from file descriptor



Standard C Library (libc, -lc)


#include <unistd.h>

char *
ttyname(int fd);

ttyname_r(int fd, char *buf, size_t len);

isatty(int fd);


These functions operate on file descriptors for terminal type devices.

The isatty() function determines if the file descriptor fd refers to a valid terminal type device.

The ttyname() function gets the related device name of a file descriptor for which isatty() is true.

The ttyname() function returns the name stored in a static buffer which will be overwritten on subsequent calls. The ttyname_r() function takes a buffer and length as arguments to avoid this problem.


The isatty() function returns 1 if fd refers to a terminal type device; otherwise, it returns 0 and may set errno to indicate the error. The ttyname() function returns the null terminated name if the device is found and isatty() is true; otherwise a NULL pointer is returned. The ttyname_r() function returns 0 if successful. Otherwise an error number is returned.


These functions may fail if:
  The fd argument is not a valid file descriptor.
  The file associated with fd is not a terminal.

Additionally, ttyname_r() may fail if:
  The bufsize argument is smaller than the length of the string to be returned.


fdevname(3), ptsname(3), tcgetattr(3), tty(4)


The isatty() and ttyname() functions appeared in AT&T v7 . The ttyname_r() function appeared in FreeBSD 6.0 .

TTYNAME (3) July 18, 2014

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

"I liken starting one's computing career with Unix, say as an undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act."
— Ken Pier, Xerox PARC