小编Bla*_*ori的帖子

防止终端提示被程序输出覆盖

假设我在终端中运行这样的命令:

~$ echo 'sleep 2; echo "hello!"' | sh
Run Code Online (Sandbox Code Playgroud)

然后开始输入下一行。两秒钟后,“你好!\n”这个词将被插入到我正在写的任何内容中。我知道有一个解决方法(按上然后下刷新提示),但是在其他没有历史记录的系统上——例如,通过 telnet 使用 MUD——这是不可能的。

有人知道将标准输入与标准输出分开的 ncurses 应用程序或终端模拟器吗?这在 ncurses 中似乎很容易制作,您只需要使用一些聪明的 dup2s,但在我制作之前,我想知道是否有人以前做过。

也欢迎针对主要问题的任何其他解决方案。

prompt terminal ncurses

3
推荐指数
1
解决办法
1578
查看次数

标签 统计

ncurses ×1

prompt ×1

terminal ×1