zoukankan      html  css  js  c++  java
  • jsch通过SSH2执行linux命令

    public class SSHUtils {
    
        private Channel channel;
        private Session session = null;
        private int timeout = 60000;
    
        public SSHUtils(final String ipAddress, final String username, final String password) throws Exception {
    
            JSch jsch = new JSch();
            this.session = jsch.getSession(username, ipAddress, 22);
            this.session.setPassword(password);
            this.session.setConfig("StrictHostKeyChecking", "no");
            this.session.setTimeout(this.timeout);
            this.session.connect();
            this.channel = this.session.openChannel("shell");
            this.channel.connect(1000);
        }
    
        public String runShell(String cmd, String charset) throws Exception {
            String temp = null;
    
            InputStream instream = null;
            OutputStream outstream = null;
            try {
                instream = this.channel.getInputStream();
                outstream = this.channel.getOutputStream();
                outstream.write(cmd.getBytes());
                outstream.flush();
                Thread.sleep(2000);
                if (instream.available() > 0) {
                    byte[] data = new byte[instream.available()];
                    int nLen = instream.read(data);
    
                    if (nLen < 0) {
                        throw new Exception("network error.");
                    }
    
                    temp = new String(data, 0, nLen, "UTF-8");
                }
            }  finally {
                outstream.close();
                instream.close();
            }
            return temp;
        }
    
        public void close() {
            this.channel.disconnect();
            this.session.disconnect();
        }
    
        public static void main(final String[] args) throws Exception {
            SSHUtils sshUtil = new SSHUtils("10.5.31.157", "root", "codyy#123456");
            String res = sshUtil.runShell("/usr/local/baseframe/server.sh start ConfigServer-1.0.0.jar
    ", "utf-8");
            System.out.println(res);
            sshUtil.close();
        }
    }
  • 相关阅读:
    springboot内置分页技术
    打印正三角,倒三角,实心棱形,空心棱形
    显示Pl/Sql Developer window list窗口
    Oracle 中使用正则表达式
    前端使用pdf.js预览pdf文件,超级简单
    tomcat8踩坑:url包含|等特殊字符报错400的问题
    使用 Itext 生成PDF字节数组(文件流不落地)
    使用 Itext 生成PDF
    回车提交事件
    python爬虫之re正则表达式库
  • 原文地址:https://www.cnblogs.com/LOVE0612/p/9855601.html
Copyright © 2011-2022 走看看