3 ms·
There’s a function isatty that detect if a file descriptor (stdout is one) is associated with a terminal https://man.openbsd.org/man3/ttyname.3 https://man.ope
by skydhash 8mo ago
There’s a function isatty that detect if a file descriptor (stdout is one) is associated with a terminal
https://man.openbsd.org/man3/ttyname.3 https://man.openbsd.org/man3/ttyname.3
I believe most standard libraries has a version.
- sdsd 8mo agoI was about to comment the same thing. Usually I don't call the function directly, but via the tty command in my shell scripts: if tty -s; then echo "Standard input is a TTY (interactive mode)." else echo "Standard input is not a TTY (e.g., piped or redirected)." fi Now I wonder how _isatty_ itself detects whether a file descriptor is associated with a terminal!
- skydhash 8mo agoIn OpenBSD, with the fcntl system call https://github.com/openbsd/src/blob/master/lib/libc/gen/isatty.c https://github.com/openbsd/src/blob/master/lib/libc/gen/isat... https://man.openbsd.org/fcntl https://man.openbsd.org/fcntl https://github.com/openbsd/src/blob/master/sys/sys/fcntl.h https://github.com/openbsd/src/blob/master/sys/sys/fcntl.h https://github.com/openbsd/src/blob/ba496e5267528b649ec87212f12281fc753215ab/sys/kern/kern_descrip.c#L479 https://github.com/openbsd/src/blob/ba496e5267528b649ec87212... https://github.com/openbsd/src/blob/ba496e5267528b649ec87212f12281fc753215ab/sys/sys/vnode.h#L143 https://github.com/openbsd/src/blob/ba496e5267528b649ec87212...