SSH構成ファイルにショートカットがあり、それはうまく機能しますが、私がやりたいのは、異なるエイリアスをサーバー上の異なるディレクトリにジャンプさせることです。だから私がタイプすると
ssh domain1
これは接続し、自動的にdomain1のディレクトリにcd
します。
それを行う方法はありますか?何かのようなもの
Host dev1
Hostname example.com
User myname
Dir domains/domain1/
Host dev2
Hostname example.com
User myname
Dir domains/domain2/
この投稿では ServerFault上 、彼らはあなたがssh設定ファイルを通してそれをすべて行うことはできないと言っています。ただし、ssh configと.bash_profile、またはターミナルオタクが呼び出すものを使用して実行できます。 ssh設定ファイルに追加
Host dev
Hostname server.com
User joe
次に、.bash_profileにエイリアスを追加します
alias domain1="ssh dev -t 'cd domains/domain1; bash'"
ここで、dev
は、構成ファイルで設定したものを指します。
ターミナルでdomain1
と入力するだけで、パスワードを入力するように求められ、ディレクトリに直接移動します。すべてのドメインに新しいエイリアスを作成すると、各ドメインへのログインが非常に簡単になります。
見てください https://serverfault.com/questions/167416/change-directory-automatically-on-ssh-login
これは受け入れられた答えです:
あなたが探していることは、SSHを介して実際に達成することはできません。何らかの方法でシェルを変更する必要があります。 bashrc/bash_profile経由。
完全を期すために、次のことができますssh -t
ディレクトリを変更する(それがあなたの質問ではなかったことは知っていますが、他の人に役立つかもしれません):
ssh server -t "cd /my/remote/directory; bash --login"