Ncurses
允许在物理屏幕 ( ) 级别将一行与屏幕分离,curscr
将其专用于标题栏等,从而还创建一个stdscr
专用于应用程序视口的逻辑屏幕 ( )。这是负责此操作的ncurses
调用。ripoffline()
这是我的问题的基本解释——我需要对/dev/tty
.对我来说最好的方法是创建一个虚拟的eg /tmp/tty.LCRiAotf
,它会包裹/dev/tty
并以某种方式撕掉单个顶线或底线。
我的主脚本将使用/dev/tty
并提供我想要创建的顶部或底部菜单栏,而从属脚本将使用/tmp/tty.LCRiAotf
高度小于 1 行的逻辑 tty,不会干扰菜单栏。
最好是在 shell 脚本中执行此操作,通常在 Zshell 中。我知道使用命令行工具创建包装 tty 设备可能很困难,但也许有可能?也欢迎其他解决方案。这可能吗?
答案1
Dialog(1) 和whiptail(1) 是基于ncurses 库构建的命令行程序,允许在shell 脚本级别创建弹出框、菜单等。我不知道它们是否涵盖了您寻求的具体用途。