在 Linux Mint 终端窗口中,当我ssh
进入 OpenBSD 时,终端窗口标题保持与终端相同username@localhostname:~
,而登录到 Ubuntu 时,终端窗口标题将更改为username@remotehostname:~
。
我确实找到了许多解决这个问题的解决方案,但解决方案似乎有很多不同的种类,而且似乎很少解决我正在使用的特定 shell。
因此,与其通过良好的“猜测和检查”来找出哪个解决方案适合我,我更愿意首先了解为什么我会遇到这个问题,这样我就可以进入下一步寻找解决方案。
ssh
为什么使用 Linux Mint 登录 OpenBSD时终端窗口标题没有改变?
答案1
创建终端窗口后,仅当窗口中的某些程序输出特定系列的字符时,其标题才会更改。对于 xterm windows,这一系列字符是<ESC>]0;title goes here<BEL>
,尽管似乎也支持其他序列。
据推测,您的 Ubuntu 系统上的 shell 被配置为发出此序列,很可能作为命令提示符的不可见部分。如果您使用 bash,告诉 bash 执行此操作的配置往往位于您的~/.bashrc
文件中,该文件是您在系统上创建帐户时根据 Ubuntu 提供的默认值创建的。
另一方面,您的 OpenBSD 系统上的 shell 显然没有这样的默认配置,因此,当您登录到系统时,没有任何信息告诉正在运行的终端更改其标题。