12

リモート接続する必要のあるサーバーが複数あります。私はそうするためにパテよりもCygwinを好みます。

とにかく-私のクールなMinttyウィンドウを開いてから、次のコマンドを入力するプロセスには時間がかかりすぎます。PS-私はこれらのサーバーに「キー」認証を使用しています。

まず、WindowsデスクトップからCygwinターミナルのショートカットをダブルクリックします。

次に、ターミナルセッションが起動したら、コマンドプロンプトから次のように入力します-

$ eval `ssh-agent`
$ ssh-add
$ ssh <username>@<servername>

私の「サーバー名」は可変であることに注意してください。実際、そこに挿入される可能性のある約10の異なるサーバー名があります。したがって、10の異なるショートカットが必要です。デスクトップから何かをダブルクリックすると、Minttyが起動し、上記のbashシェルコマンドが自動的に実行されます。

誰かがこれを行うための素晴らしい/エレガントなソリューションを持っているか、推奨できますか?

(クリックしているWindowsショートカットアイコンのTarget属性と関係があるように感じます。)

4

2 に答える 2

13

あなたはそれほど困難なくこれを行うことができます。既存のCygwinターミナルアイコンをコピーして右クリックし、[プロパティ]を選択します。[ターゲット]フィールドに次のようなものが表示されます。

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -

これを次のように置き換えます(置き換え<username><servername>、関連する場合)。

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico /bin/bash -l -c "eval `ssh-agent` ; ssh-add ; ssh <username>@<servername>"

他のサーバーについても必要に応じて繰り返します。それでおしまい!

(詳細:-引数[標準のログインシェルを使用することを意味します]をbashへの明示的な呼び出しに置き換えてコマンドを実行します。-l一部はログインシェルを使用することを意味します。これは特にPATH変数が設定されているため、bashができることを意味します。検索ssh。この-c部分では、コマンドを紹介するだけです。これは、質問から認識しておく必要があります。)

于 2012-08-31T12:39:19.843 に答える
6

これを達成するために、私は次の手順を実行しました。

ステップ1:スクリプトと呼ばれるCygwinをインストールしたディレクトリを作成しました

ステップ2:このディレクトリにservername.shというBASHスクリプトを作成しました

ステップ3:servername.shには次の内容が含まれます(1行)。

eval `ssh-agent`;ssh-add;ssh user@servername

(ユーザーとサーバー名を適切な情報に置き換えてください)

ステップ4:Cygwinターミナルアイコンのショートカットを作成しました

ステップ5:必要な場所に貼り付けます(デスクトップ上-ただし、配置する場所を選択できます)。

ステップ6:右クリックしてショートカットの名前を変更しました(サーバー名に名前を付けます)

ステップ7:右クリックして[プロパティ]を選択します

ステップ8:[ターゲット属性]セクションに次のコード行があります-

C:\Cygwin\bin\mintty.exe -e /bin/sh -l -c '/scripts/servername.sh'

そして、あなたの道があなたの環境と一致することを確認してください!

乾杯。

于 2012-08-31T16:25:07.967 に答える