/dev/tty 和 stdin/stdout/stderr 之间有什么关系?
what's the relationship between /dev/tty and stdin/stdout/stderr?
我知道他们有不同的文件描述符,stdxx 可以重定向。
int tty_fd = open("/dev/tty", O_RDWR);
那么,下面的代码有什么区别(stdxx 未重定向):
n = read(tty_fd, buf, sizeof(buf));
n = read(STDIN_FILENO, buf, sizeof(buf));
n = write(tty_fd, buf, sizeof(buf));
n = write(STDOUT_FILENO, buf, sizeof(buf));
stdxx 与 link 到 /dev/tty 相同吗?
除非没有重定向“/dev/tty”将用于显示标准输出或标准错误。您可以有选择地将 stdout/stderr 输出到 /dev/tty.
以外的不同文件描述符上
我知道他们有不同的文件描述符,stdxx 可以重定向。
int tty_fd = open("/dev/tty", O_RDWR);
那么,下面的代码有什么区别(stdxx 未重定向):
n = read(tty_fd, buf, sizeof(buf));
n = read(STDIN_FILENO, buf, sizeof(buf));
n = write(tty_fd, buf, sizeof(buf));
n = write(STDOUT_FILENO, buf, sizeof(buf));
stdxx 与 link 到 /dev/tty 相同吗?
除非没有重定向“/dev/tty”将用于显示标准输出或标准错误。您可以有选择地将 stdout/stderr 输出到 /dev/tty.
以外的不同文件描述符上