答案1
这不是 SSH 问题。问题是远程主机上的 shell 配置为发送转义序列来设置终端窗口标题。这是一个相当常见的设置。博客文章您链接的是正确的。
最简单、最直接的解决方案是配置相同的远程 shell,以便在注销时重置窗口标题。例如,如果远程 shell 是 bash,请将其放入 ~/.bash_logout 中:
printf '\e]0;\a'
或者,如果您希望本地 shell 用一些有用的内容更新窗口标题,那么请这样做。当 ssh 连接结束时,本地 shell 会将窗口标题设置为其他内容,而不是保留旧值。例如,将其放入 ~/.bashrc 中:
PS1='\[\e]1;\s\$ \W\a\e]2;\u@\h\a\]'"$PS1"
这会将用户和主机名放在窗口标题中(这通常是远程 shell 配置为执行的操作),并且设置选项卡标题以显示 shell 名称和类型(普通用户或 root)以及当前工作目录。
请注意,如果您还没有 ~/.bash_profile(或 ~/.profile),请创建一个并让其运行 ~/.bashrc,以便 ~/.bashrc 适用于登录和非登录 shell:
if [ -f $HOME/.bashrc ]; then
. $HOME/.bashrc
fi