在终端的第一行显示屏幕标题

在终端的第一行显示屏幕标题

当我启动新终端时,提示位于第一行。工作一段时间后(或运行产生一些输出的命令),提示符位于最后一行。除非我按Ctrl- l、运行clearreset类似的操作,否则它将在会话的其余时间停留在那里。

为了在工作中获得一定程度的连续性,我screen使用在标题中显示会话名称的技巧(我将最后一个与screen中的两个命令一起使用.screenrc)。

为了避免工作区域混乱而造成认知开销,我希望这个标题显示在终端的顶部。

答案1

你很幸运,屏幕确实支持保存和恢复命令。所以用bash就可以做到。

给出如何使用特殊转义序列移动光标的说明。你可以写“Hello World!”到左上角:

echo -e "\033[s\033[2;0HHello World!            \n                        \033[u"

解释:字符\033[s保存当前光标位置,这就是我们想要的 b/c 屏幕终端尺寸可以变化很多。然后\033[2;0将光标移动到第三行第一个字符(我们从左上角开始计数,从 0 开始)。然后是文字和一些可能的说明。最后,代码\033[u将光标放回到发出的位置\033[s

此示例将光标移动到第二行,因为发出命令时会打印 2 个换行符,因此当前第三行将是第一行。

您可以将其与会话标题一起使用,您可以通过已链接的说明获得该标题。

相关内容