unix - UNIX 中的/dev/tty 是什么?

标签 unix

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

7年前关闭。




Improve this question




stdin 和 stdout 文件描述符都指向它。它是如何工作的?有人可以指出一个很好的资源来理解 UNIX 终端和与之交互的系统调用。

最佳答案

dev/tty是代表当前控制台的文件系统对象。从命令行将文件复制到此“目录”中会将这些文件的内容打印到您的控制台:

cp myfile.txt /dev/tty

相当于
cat myfile.txt

这些对象可让您使用熟悉的文件 API 与控制台进行交互。这是将控制台 API 与文件 API 统一的巧妙方法。您可以使用 fopen , fprintf等以与与常规文件交互的方式与控制台交互。

这个例子写"Hello, world\n"到终端:

#include <stdio.h>

int main (int argc, const char * argv[]) {
    FILE *f = fopen("/dev/tty", "w");
    fprintf(f, "Hello, world!\n");
    return 0;
}

关于unix - UNIX 中的/dev/tty 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10435308/

相关文章:

unix - 将 nmake 转换为 make

c - 结构字符未正确分配

UNIX 终端应用程序中的彩色文本

perl - 收集具有相似列的数据

bash "command not found"错误

c - C 中的信号处理

linux - 查看在后台运行的命令的输出

php - MySQL将时间添加到列

c - 如何将字符串加载到结构中?

python - 为 Python 解释器建立的每个连接绑定(bind)传出 IP 地址