什么是/ dev / tty和stdin / stdout / stderr之间的关系?

时间:2017-06-08 03:20:08

标签: linux stdout stdin stderr 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与/ dev / tty的链接相同吗?

1 个答案:

答案 0 :(得分:0)

除非没有重定向" / dev / tty"将用于显示标准输出或标准错误。您可以有选择地将stdout / stderr输出到/ dev / tty以外的不同文件描述符。