The GNU C Library - Is It a Terminal

Node: Is It a Terminal Next: I/O Queues Up: Low-Level Terminal Interface

Identifying Terminals

The functions described in this chapter only work on files that correspond to terminal devices. You can find out whether a file descriptor is associated with a terminal by using the isatty function.

Prototypes for both isatty and ttyname are declared in the header file `unistd.h'.

Function int isatty (int filedes)
This function returns 1 if filedes is a file descriptor associated with an open terminal device, and 0 otherwise.

If a file descriptor is associated with a terminal, you can get its associated file name using the ttyname function. See also the ctermid function, described in Identifying the Terminal.

Function char * ttyname (int filedes)
If the file descriptor filedes is associated with a terminal device, the ttyname function returns a pointer to a statically-allocated, null-terminated string containing the file name of the terminal file. The value is a null pointer if the file descriptor isn't associated with a terminal, or the file name cannot be determined.


Next: I/O Queues Up: Low-Level Terminal Interface