web-dev-qa-db-ja.com

サーバー上のディレクトリにアクセスするためのSSH構成ファイルエイリアス

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/
18
Jay

この投稿では 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と入力するだけで、パスワードを入力するように求められ、ディレクトリに直接移動します。すべてのドメインに新しいエイリアスを作成すると、各ドメインへのログインが非常に簡単になります。

18
Jay

見てください 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"
3
Philipp Claßen