天天看點

利用ganymed-ssh2遠端執行其它Linux機器上的shell指令

實際應用中,有時候需要從web管理界面上,遠端去啟動其它linux主機上的程式,利用ssh協定可以友善的滿足這一需求。事實上hadoop架構中,從nn上啟動dn時,就是利用了免密碼ssh登入。ganymed-ssh2是一個實作了ssh協定的開源項目,項目位址為:http://ganymed-ssh-2.googlecode.com/ (下載下傳源碼要翻強,衆所周知的原因),如果隻是使用的話,pom.xml添加以下依賴項就行了:

使用要點:

1. 如果要連續執行多個指令,用&&連接配接,比如:先 cd / 切換到根目錄,然後再ls 根目錄下的所有檔案,可以這樣調用:

上面的指令相當于在同一個session下,連續執行

pwd

cd /

ls

2. 如果要以背景程序調用指令,傳入指令時,直接加 nohup 即可