私が接続しているすべてのホストのGnome端末のタイトルを「user@host」に設定できますか?

私が接続しているすべてのホストのGnome端末のタイトルを「user@host」に設定できますか?

user@hostウィンドウタイトルでどのコンピュータに接続されているかを簡単に知るために、ターミナルタイトルをに設定したいと思います。 SSHまたはGNOME端末でこれを行う方法はありますか?

答え1

はい。以下は、配布に依存しない PS1 を使用する bash の例です。

特にエスケープシーケンスが\[\e]0; __SOME_STUFF_HERE__ \a\]重要です。より明確にするために、これを別の変数として編集しました。

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
        # We have color support; assume it's compliant with Ecma-48
        # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
        # a case would tend to support setf rather than setaf.)
        color_prompt=yes
    else
        color_prompt=
    fi
fi

TITLEBAR='\[\e]0;\u@\h\a\]'
# Same thing.. but with octal ASCII escape chars
#TITLEBAR='\[\033]2;\u@\h\007\]'

if [ "$color_prompt" = yes ]; then
    PS1="${TITLEBAR}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]\$ "
else
    PS1="${TITLEBAR}\u@\h:\W\$ "
fi
unset color_prompt force_color_prompt

また、使用しているターミナルプログラムとシェルに応じてxtermヘッダーを設定する方法はいくつかあります。たとえば、KDEのKonsoleを使用している場合は、Settings-> Configure Profiles-> Edit Profile->Tabs設定Tab title formatRemote tab title format設定に移動してタイトル設定を上書きできます。

Konsole タイトルバーの設定ダイアログボックス

また、次の点も確認してみてください。

答え2

以下は、リモートサーバーを変更せずにリモートサーバーのタイトルとコマンドプロンプトを設定するために使用するSSH bashスクリプトのバージョンです。

my_ssh.sh:

#!/bin/bash
SETTP='MY_PROMPT="$HOSTNAME:$PWD\$ "'
SETTP="$SETTP;"'MY_TITLE="\[\e]0;$HOSTNAME:$PWD\a\]"'
SETTP="$SETTP;"'PS1="$MY_TITLE$MY_PROMPT"'
ssh -t $1@$2 "export PROMPT_COMMAND='eval '\\''$SETTP'\\'; bash --login"

./my_ssh.sh ユーザー名 ホスト名を呼び出して呼び出すことができます。

答え3

以下は私にとって効果的でした(おそらくgnome端末でのみ可能です)。

comp@home$ cat /usr/bin/ssh
#!/bin/bash    
echo -ne "\033]0;${1}\007"
ssh_bkup "$@"

ssh_bkupコマンドがデフォルトの「ssh」ですが名前が変更された場合、echoコマンドは現在の端末のタイトルを変更した直後に呼び出されます。

答え4

を使用している場合は、ファイルzshに以下を追加します。.zshrc

export DISABLE_AUTO_TITLE="true"

precmd() {
    printf "\033];$(whoami)@$(hostname):${PWD/#$HOME/~}\007";
}

関連情報