![]() |
1
2
tty输入模式默认为行输入,因此在输出之前不会看到任何内容 我建议使用 strace 调试这种行为。通过这种方式,您可以查看系统调用,例如,查看您是否在读取时被阻止,等待更多的输入等等。 当您不使用“</dev/tty0”时,它确实有效,对吗? 基本上,你想要的是性格的共鸣。如果您执行以下操作:
您可以使用以下方法来选择流程:
但是如果您查看strace代码,就会发现cat子进程只写一次asdf,而它的父进程(即shell)从不写asdf。 那么,为什么会有两个“asdf”输出呢?因为tty层在做局部回波。因此,当您在shell中键入某个内容时,它将转到pty,而pty驱动程序:
现在,如果您想要一些交互式的东西,您将需要在raw模式下配置/dev/tty0,并使用select来知道何时可以不阻塞地读取,以及何时有数据可供输出。
|
![]() |
GreenFerret95 · 福克斯与亲子沟通 7 年前 |
![]() |
Mickey Tin · Android签名保护和导出=“false” 7 年前 |
![]() |
Benp44 · ZMQ:连接ZMQ套接字时“资源暂时不可用” 7 年前 |
![]() |
Ashish K · 命名管道卡在打开位置 7 年前 |
![]() |
AIon · electron中两个浏览器窗口之间的通信 8 年前 |