2011-11-13

ssh接続を簡単にするGroovyオブジェクト

ssh接続の面倒なところをカプセル化する、Groovyクラスです。
リモートコンピュータに接続してコマンドを実行するスクリプトを、簡潔に書くことができます。
ダウンロード

※ ちなみに、ファイルのエンコードはUTF-8になってます。
使用する際には、実行環境のデフォルトエンコードで保存し直してください。

使い方はカンタン。
接続先ホスト名やユーザ名、パスワードをセットして、withConnectionのパラメータのクロージャ内で、お好みのコマンドを実行するだけです。

こんなかんじ。
new SshSession(
    host:'RemoteHost', user:'aUser', password:'password', log:writer, hostEncode:'utf-8'
).withConnection{
    execute('ls')
    println message
}
どんなプロパティがあるかについては、ソースを参照してください。

withConnectionは、クロージャを実行する直前にssh接続をオープンし、クロージャ実行直後に接続をクローズします。

executeメソッドは、パラメータに文字列として与えられたを、リモートコンピュータ上でそのまま実行します。

message変数には、最後に実行したコマンドの標準出力がセットされます。

クラスパスにGanymed SSH2が必要です。

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...