根据远程主机名更改 tmux 窗格的背景颜色

Change background color of tmux pane depending on remote hostname

如果我在单个窗格中从 tmux ssh 连接到远程服务器,是否可以根据服务器名称更改窗格的背景颜色?

假设我所有的生产服务器都以 prod_XYZ 开头,开发服务器以 [​​=11=] 开头在?也就是说,基于服务器前缀?

我知道 tmux 面板 now understand color。因此,如果我可以检测到正在使用 ssh 命令,那么我可以确定服务器的名称并将命令 select-pane -t:.1 -P 'fg=blue,bg=red' 发送到 tmux。但是我如何 (A) 将颜色发送到正确的窗格; (B) 从终端获取服务器名称给 color tmux?

最简单的方法是编写脚本或 shell 函数,然后将其别名为 ssh,类似于(未测试):

#!/bin/sh
if [ -n "$TMUX" ]; then
    case "" in
    prod_*)
        tmux selectp -P bg=red
    ;;
    esac
fi
ssh "$@"
tmux selectp -P default