SSHconnection
2015-09-11 13:16
302 查看
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import org.omg.CORBA.TIMEOUT; import ch.ethz.ssh2.ChannelCondition; import ch.ethz.ssh2.Connection; import ch.ethz.ssh2.Session; import ch.ethz.ssh2.StreamGobbler; public class SSHConnection { public static Connection connection(){ Connection conn = null; try { conn = new Connection("192.168.0.148",22); conn.connect(); boolean flag = conn.authenticateWithPassword("hdcc", "waygoing"); if(flag){ return conn; } } catch (IOException e) { e.printStackTrace(); } return null; } //获得session 来操作命令 public static Session getSession(Connection conn){ Session sess = null; if(conn!=null){ try { sess = conn.openSession(); return sess; } catch (IOException e) { e.printStackTrace(); } } return null; } //关闭session public static void closeSesssion(Session sess){ if(sess!=null){ sess.close(); } } //关闭连接 public static void closeConn(Connection conn,Session sess){ if(sess!=null){ sess.close(); }else if(conn!=null){ conn.close(); } } public static void main(String[] args) { Connection conn = SSHConnection.connection(); if(conn!=null){ Session sess = SSHConnection.getSession(conn); try { sess.execCommand("cd /home/hdcc/webservice/apache-tomcat-6.0.41/webapps;ls"); sess.waitForCondition(ChannelCondition.EXIT_STATUS, 1000); System.out.println(sess.getExitStatus()); InputStream stdout = new StreamGobbler(sess.getStdout()); BufferedReader br = new BufferedReader(new InputStreamReader(stdout)); String count; while ((count = br.readLine())!=null) { System.out.println(count); } SSHConnection.closeConn(conn, sess); System.out.println(sess.getExitStatus()); } catch (IOException e) { e.printStackTrace(); } } } }
相关文章推荐
- win7下cocos2dx开发环境搭建
- ACM —— 1010 STAMPS
- PHP的输出缓冲区(转)
- LDA 主题模型的几种概率分布
- IOS打开照相机与本地相册选择图片
- 《剑指offer》树的子结构
- 最近的一些事儿
- 【项目2 - 程序的多文件组织】 ---xjp
- 字符串和编码
- 字符串匹配的Boyer-Moore算法
- IOS使用UIImageView显示gif动画的例子
- IOS使用UIImageView显示gif动画的例子
- Zabbix---添加linux服务器监控
- xmpp Smack asmack Spark MINA Openfire androidpn MQTT RSMB
- KMP算法详解
- 微信第三方平台开发三(消息加解密)
- ubuntu中安装gcc和g++编译环境
- Android开发_View 硬件加速
- Redhat 6.4-x64 编译 Hadoop-2.7.1并分布式安装
- 小菜的前端编程散谈(1)