読者です 読者をやめる 読者になる 読者になる

GNU screen の title に ssh リモートホスト名を表示する

別途シェルスクリプトを介してやってたんですが、 .ssh/config だけで済んだので更新。
以下を .ssh/config に貼りつけたら動きます。 % man ssh_config にありますが、%hリモートホスト名に置換されるため、それを弄ってます。

PermitLocalCommand yes
LocalCommand [[ "$TERM" =~ ^screen ]] && echo -ne "\ek$(echo '%h' | awk -F '.' '{print $1}')\e\\"

ローカルホストでは実行しているコマンド名を表示するようにしてます(zsh

autoload -Uz add-zsh-hook
function _precmd_screen_title() {
        echo -ne "\ek$(basename $SHELL)\e\\"
}
function _preexec_screen_title() {
        echo -ne "\ek$1\e\\"
}
add-zsh-hook precmd _precmd_screen_title
add-zsh-hook preexec _preexec_screen_title