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('pwd')
    log.info(message)

    execute('ls')
    log.info(message)
}

どんなプロパティがあるかについては、ソースを参照してください。

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

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

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

クラスパスにGanymed SSH2が必要です。
タグ:GROOVY
posted by craftsman at 10:12 | 東京 ☀ | Comment(0) | TrackBack(0) | 小道具
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。