Java通過(guò)SSH2協(xié)議運(yùn)行遠(yuǎn)程程序
我使用Ganymed庫(kù),訪問(wèn)http://www.ganymed.ethz.ch/ssh2/網(wǎng)頁(yè),下載最新版本的程序,解壓后,在NetBeans下如下設(shè)置。
然后在我們的Java應(yīng)用程序中,加入Ganymed-ssh2-build2庫(kù)。
假定我在192.168.0.110的UBuntu Server 9.04系統(tǒng)的/home/chenshu目錄下放了一個(gè)文件夾test,test文件夾對(duì)應(yīng)測(cè)試Java類的包名test,我們?cè)谠摍C(jī)器上運(yùn)用javac ./test/Main.java編譯后,在另一臺(tái)機(jī)器上運(yùn)行Java程序,該程序通過(guò)調(diào)用我們新建的Ganymed-ssh2-build2庫(kù)的類完成遠(yuǎn)程調(diào)用功能:
- package javaapplication3;
- import ch.ethz.ssh2.Connection;
- import ch.ethz.ssh2.ConnectionInfo;
- import ch.ethz.ssh2.Session;
- /**
- *
- * @author chenshu
- */
- public class Main {
- public static void main(String[] args) {
- try {
- Connection con = new Connection("192.168.0.110");
- ConnectionInfo info = con.connect();
- boolean result = con.authenticateWithPassword("chenshu", "770328");
- Session session = con.openSession();
- session.execCommand("java test.Main");
- } catch (Exception ex) {
- System.out.println(ex.getLocalizedMessage());
- }
- }
- }
現(xiàn)在看看服務(wù)器上,多了一個(gè)test.txt,那是test.Main類運(yùn)行后產(chǎn)生的文件。你們可以隨便放一個(gè)Java測(cè)試程序,這里test程序代碼已經(jīng)無(wú)關(guān)緊要了。
搞定!
原文鏈接:http://blog.csdn.net/sheismylife/article/details/4823696
【編輯推薦】