SSHを介してリモートコンピュータに接続するたびに、このディレクティブを使用して~/.ssh/config
ローカルLocalCommand
コマンドを実行できます。しかし、私はいつ出口SSH接続? *.bashrc/.bash_profile* ファイルは、接続の終了またはクローズ時にインポートされないようです。
ベストアンサー1
ローカルシステムまたはリモートシステムでこれを行うかどうかの仕様はありません。どのシステムにどのシェルが存在するかについての仕様もないので、両方のbash
システムに存在すると仮定します。
リモートコンピュータで実行するには、~/.bash_logout
ログインシェルが正常にログアウトしたときに実行されることを確認してください。からman bash
:
ログインシェルが終了すると、bash はファイルが
~/.bash_logout
存在する場合はそのコマンドを読み込み実行します。
~/.bash_logout
次のように、ログアウトされたシェルがSSHセッションかどうかをテストして確認できます。
if [[ $SSH_CLIENT || $SSH_CONNECTION || $SSH_TTY ]]; then
# commands go here
fi
ローカルコンピュータで実行するには、関数ラッパーを作成しますssh
。次のように動作する必要があります。
ssh() {
if command ssh "$@"; then
# commands go here
fi
}
これはあなたのニーズに比べて簡単すぎるかもしれませんが、アイデアを得ることができます。