私たちのサーバーには標準の「デフォルトサーバー」CentOS 6.7がインストールされており、デスクトップにはUbuntu 14.04がインストールされています。
UbuntuデスクトップからリモートサーバーにSSHを介して接続すると(CentOSインスタンスとしてSSHとして接続するなど)、[ターミナル]タブが表示されます。user@hostname:path
ただし、リモートデスクトップにsshを接続すると(たとえば、他のUbuntuインスタンスへのssh接続)、ターミナルタブが表示されますmy_user@my_host:path
。つまり、現在使用しているローカルユーザー、ローカルホスト名、およびローカルパスが表示されます。以前SSH経由でデスクトップの削除にアクセスします。
PS1
UbuntuとCentOSホストを扱いました。
私地元のsettings が、PROMPT_COMMAND
リモート CentOS または Ubuntu ホストに設定はありません。
[local-ubuntu] $ echo $PROMPT_COMMAND
[local-ubuntu] PROMPT_COMMAND=echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"
[remote-ubuntu] $ echo $PROMPT_COMMAND
[remote-ubuntu]
[remote-centos] $ echo $PROMPT_COMMAND
[remote-centos]
GNOME Terminal 3.6.2を実行しています。
[local-ubuntu] $ gnome-terminal --version
[local-ubuntu] GNOME Terminal 3.6.2
私は未設定私のローカルでPROMPT_COMMAND
CentOSでsshを実行するとuser@hostname:path
タブが表示されますが、Ubuntuでsshを実行すると何も表示されません。
だから私の結論は、CentOSが私のタブにその情報を表示するために何かをしていますが、Ubuntuはそれをしないということです。
質問:
user@hostname:path
リモート端末セッションを表示するCentOSにはありますが、Ubuntuにはない設定は何ですか?
答え1
Redhat(およびCentos)PROMPT_COMMAND
設定タイトルバー調整制御シーケンス基本的に:
% bash -xic : 2>&1 | egrep 'PROMPT|PS'
++ PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
++ PS1='[\u@\h \W]\$ '
%
/etc/bashrc
この設定はRedhatのマニュアルにあります。
% grep 007 /etc/bashrc
PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"'
% rpm -qf /etc/bashrc
setup-2.8.14-20.el6_4.1.noarch
%
Ubuntuはグローバルシェルrcファイルでこれらの設定変更を行わない可能性があるため、ターミナルのタイトルバーは変更されません。