JoeT Asked: 2021-07-17 11:05:34 +0800 CST2021-07-17 11:05:34 +0800 CST 2021-07-17 11:05:34 +0800 CST 当您与 bash(通过图形终端)交互时,bash 会从哪个文件中读取以获得用户输入? 772 这是一个家庭作业问题,我尝试了几次谷歌搜索,但无济于事。有人可以帮我理解以下答案吗?有人可以将我引导到讨论 tty 的在线资源吗?提前致谢 答:它通常从 tty 设备读取,例如 /dev/pts/0 或类似设备。 ubuntu-18.04 operating-systems 1 个回答 Voted Best Answer harrymc 2021-07-17T11:53:41+08:002021-07-17T11:53:41+08:00 你应该学习 devpts,定义为: devpts 是自版本 2.1.93(1998 年 4 月)以来在 Linux 内核中可用的虚拟文件系统。它通常安装在 /dev/pts 并且仅包含设备文件,这些设备文件代表位于 /dev/ptmx 的多路复用主机的从属设备。 实际上,“pts”代表“ p seudo t erminal slave ” 。它是纯虚拟的,仅驻留在内存中,仅存在于没有真实输入终端的图形终端中。 进一步定义为: 伪终端(“伪 TTY”或“PTY”)是一对伪设备——从属设备和主设备——提供一种特殊的通信通道。从属伪设备模拟物理计算机文本终端,例如 DEC VT100,它可以像这样的物理终端一样读取和写入文本。主伪设备提供了一种手段,提供基于文本的用户界面的程序通过该手段与其从属设备一起操作并控制其从属设备。具有基于文本的用户界面的广泛传播的程序是终端仿真器,例如 xterm、gnome-terminal 或 Konsole,或使用 SSH 或 telnet 的程序。给主人写信就像在终端上打字一样,因此主人伪设备的行为有点像坐在物理计算机文本终端前的人。 您还将在帖子中找到很好的信息, 为什么 Linux 中有这么多 /dev/tty?
你应该学习 devpts,定义为:
实际上,“pts”代表“ p seudo t erminal slave ” 。它是纯虚拟的,仅驻留在内存中,仅存在于没有真实输入终端的图形终端中。
进一步定义为:
您还将在帖子中找到很好的信息, 为什么 Linux 中有这么多 /dev/tty?