logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

fd, stdin, stdout, stderr — file descriptor files

Description

       The  files  /dev/fd/0  through /dev/fd/# refer to file descriptors which can be accessed through the file
       system.  If the file descriptor is open and the mode the file is being opened with is  a  subset  of  the
       mode of the existing descriptor, the call:

             fd = open("/dev/fd/0", mode);

       and the call:

             fd = fcntl(0, F_DUPFD, 0);

       are equivalent.

       Opening the files /dev/stdin, /dev/stdout and /dev/stderr is equivalent to the following calls:

             fd = fcntl(STDIN_FILENO,  F_DUPFD, 0);
             fd = fcntl(STDOUT_FILENO, F_DUPFD, 0);
             fd = fcntl(STDERR_FILENO, F_DUPFD, 0);

       Flags to the open(2) call other than O_RDONLY, O_WRONLY and O_RDWR are ignored.

Files

/dev/fd/#/dev/stdin/dev/stdout/dev/stderr

Implementation Notes

       By  default,  /dev/fd is provided by devfs(5), which provides nodes for the first three file descriptors.
       Some sites may require nodes for additional file descriptors; these can be  made  available  by  mounting
       fdescfs(5) on /dev/fd.

Name

       fd, stdin, stdout, stderr — file descriptor files

See Also

tty(4), devfs(5), fdescfs(5)

Debian                                            June 9, 1993                                             FD(4)

See Also