为什么我无法在 Raspbian 中读取新打开的 TTY

Why can't I read in a freshly opened TTY in Raspbian

我的代码 运行 在 Python 中有一个小问题 3. 我试图愚弄 Raspbian,以使其相信 tty 是外部的设备。 但是,我无法阅读我之前用 os.write(slave, text.encode()) 写的一个字,使用类似 os.read(slave, 512).

我打开tty如下master, slave = os.openpty() 我想我缺少一个参数或其他东西,但我找不到什么。

我尝试在另一个终端中使用 cat < 和子进程访问 tty,但程序在必须读取时仍然阻塞。

请说明问题所在。

此致。

我认为你在这里的错误是你试图读取奴隶。如果你改为阅读母版,你应该得到你的输出。

引用自:http://www.rkoucha.fr/tech_corner/pty_pdip.html

A pseudo-terminal is a pair of character mode devices also called pty. One is master and the other is slave and they are connected with a bidirectional channel. Any data written on the slave side is forwarded to the output of the master side. Conversely, any data written on the master side is forwarded to the output of the slave side as depicted in figure 2.

RPI