SSH 構成ファイルで特定のホストのグローバル RemoteCommand 構成を元に戻す方法

SSH 構成ファイルで特定のホストのグローバル RemoteCommand 構成を元に戻す方法

次の~/.ssh/configファイルがあります:

Host myserver1
    Hostname myserver1.blop.com
    User blup

Host myserver2
    Hostname myserver2.blop.com
    User blup

Host bitbucket.org
    RemoteCommand # Want to not take care of global RemoteCommand
    RequestTTY no

Host *
    User root
    RemoteCommand PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}:${PWD}\007"' $SHELL;
    RequestTTY yes

ログイン後にリモート シェルで PROMPT_COMMAND を変更するすべてのサーバーのデフォルトが必要ですRemoteCommand。(これは機能しています) Bitbucket (git) への接続を行うオプションが失敗し、特定のホストに対してRemoteCommand無効にする方法が見つかりませんでした。RemoteCommand

試したもの: 何もない、空の文字列""$SHELL;

RemoteCommand何かアイデアはありますか?復元するデフォルト値はありますか?

答え1

  1. none値として使用しますRemoteCommand
Host bitbucket.org
    RemoteCommand none
    RequestTTY no
  1. アン代替アプローチデフォルトのホスト構成から bitbucket.org を単純に除外します。
Host * !bitbucket.org
    User root
    RemoteCommand PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}:${PWD}\007"' $SHELL;
    RequestTTY yes
  1. より良い解決策、私の特定の問題についてはRemoteCommand、コマンドMatchにのみ設定を適用する を追加します。ssh

これをファイルの先頭に追加するだけです

Match exec "test $_ = /usr/bin/ssh"
    RemoteCommand PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}:${PWD}\007"' $SHELL;
    RequestTTY yes

関連情報