如何根据我通过 SSH 进入的主机自动更改终端的背景/前景色?
我当前的设置是运行 Gnome-Terminal 的 Ubuntu 桌面,该桌面通过 SSH 连接到一组 RHEL5 主机。我有一个用于连接到这些主机的 SSH 配置文件。
我搜索过这个网站以及许多其他网站,但无法找到任何可用的解决方案。到目前为止,我尝试过使用转义字符、setterm 和 tput。当我没有通过 SSH 连接到计算机时,这些命令工作正常。但是,一旦我通过 SSH 连接,我就会丢失设置的颜色。此外,我弄乱了 Gnome-Terminal 配置文件设置,但我不想每次运行 SSH 时都手动设置配置文件。
答案1
您可以通过以下命令动态设置前景色和背景色:
echo -ne '\e]10;red\a'
echo -ne '\e]11;#ffff00\a'
我可能会将这些作为本地和远程服务器的一部分$PS1
或$PROMPT_COMMAND
两者同时发出(每个服务器的颜色不同)。这样,当您终止命令时ssh
,您将恢复到本地颜色(它甚至可以通过多个 ssh 跳转按预期工作)。