1
2
tty输入模式默认为行输入,因此在输出之前不会看到任何内容 我建议使用 strace 调试这种行为。通过这种方式,您可以查看系统调用,例如,查看您是否在读取时被阻止,等待更多的输入等等。 当您不使用“</dev/tty0”时,它确实有效,对吗? 基本上,你想要的是性格的共鸣。如果您执行以下操作:
您可以使用以下方法来选择流程:
但是如果您查看strace代码,就会发现cat子进程只写一次asdf,而它的父进程(即shell)从不写asdf。 那么,为什么会有两个“asdf”输出呢?因为tty层在做局部回波。因此,当您在shell中键入某个内容时,它将转到pty,而pty驱动程序:
现在,如果您想要一些交互式的东西,您将需要在raw模式下配置/dev/tty0,并使用select来知道何时可以不阻塞地读取,以及何时有数据可供输出。
|
Stilian · 存储库设置中没有Github页面部分 2 年前 |
Kellen · 查看$卷展栏功能列表 2 年前 |
Akshit Thakur Ak · 我怎样才能把铁轨停下来? 2 年前 |
johncssjs · 将数组转换为每个元素的嵌套哈希 2 年前 |
solidsnake99 · Rails db:如何绕过验证 2 年前 |