在 curses window 中执行 bash 命令
Execute bash commands in a curses window
这个问题肯定存在,但是我到处都找不到...
我有一个 (n)curses window,我想将其献给 bash shell (window 2),同时在 Window1:
+-------------------------------+
| | |
| | |
| WINDOW 1 | WINDOW 2 |
| | |
| | |
+-----------------+-------------+
我将如何执行此操作?我需要它来接受输入并显示输出,就好像我刚打开另一个终端一样 - 如果可能的话 - 主机是 own curses sessions(例如调用 dialog 命令)
我正在使用 c.
tmux 和 screen 可以将终端 window 细分为多个窗格,这样您就可以按照您的要求进行操作。两者都使用 ncurses 的低级特性(terminfo 或 termcap)。自己在高层次上做这件事不会是一个短小的项目,因为你必须管理伪终端连接才能使 bash 运行 等
bash 期望在 终端 中 运行 ("tty",如果你愿意的话),如果你包装一个应用程序它,使它成为 window 中的 运行,你必须为其 input/output/error 提供连接,使它们像终端一样工作。这就是伪终端:一组系统调用,让程序设置、配置、操作和关闭与需要像终端一样工作的进程(例如 bash)的连接。
使用伪终端的程序包括(毫不奇怪)终端仿真器、特殊应用程序,例如 screen, luit (e.g., the sys.c file)。
这里有一些进一步阅读的链接:
这个问题肯定存在,但是我到处都找不到...
我有一个 (n)curses window,我想将其献给 bash shell (window 2),同时在 Window1:
+-------------------------------+
| | |
| | |
| WINDOW 1 | WINDOW 2 |
| | |
| | |
+-----------------+-------------+
我将如何执行此操作?我需要它来接受输入并显示输出,就好像我刚打开另一个终端一样 - 如果可能的话 - 主机是 own curses sessions(例如调用 dialog 命令)
我正在使用 c.
tmux 和 screen 可以将终端 window 细分为多个窗格,这样您就可以按照您的要求进行操作。两者都使用 ncurses 的低级特性(terminfo 或 termcap)。自己在高层次上做这件事不会是一个短小的项目,因为你必须管理伪终端连接才能使 bash 运行 等
bash 期望在 终端 中 运行 ("tty",如果你愿意的话),如果你包装一个应用程序它,使它成为 window 中的 运行,你必须为其 input/output/error 提供连接,使它们像终端一样工作。这就是伪终端:一组系统调用,让程序设置、配置、操作和关闭与需要像终端一样工作的进程(例如 bash)的连接。
使用伪终端的程序包括(毫不奇怪)终端仿真器、特殊应用程序,例如 screen, luit (e.g., the sys.c file)。
这里有一些进一步阅读的链接: