zoukankan      html  css  js  c++  java
  • 通过Ssh协议连接到服务器执行执行的指令

    通过Ssh协议连接到服务器执行执行的指令。echo $?这条命令将显示上条指令执行的状态。0为成功,其他都是失败。

    代码如下:

    /** * */package j2ssh;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;import com.sshtools.j2ssh.SshClient;import com.sshtools.j2ssh.authentication.AuthenticationProtocolState;import com.sshtools.j2ssh.authentication.PasswordAuthenticationClient;import com.sshtools.j2ssh.session.SessionChannelClient;/** * @author lgli * */public class TestCommand{ /** * @param args */ public static void main(String[] args) { SshClient ssh = new SshClient(); PasswordAuthenticationClient authentication = new PasswordAuthenticationClient(); authentication.setUsername("avatar"); authentication.setPassword("123456"); try { ssh.connect("172.16.101.166", 22); if (ssh.authenticate(authentication) == AuthenticationProtocolState.COMPLETE) { SessionChannelClient session = ssh.openSessionChannel(); // session.setEnvironmentVariable("TERM", "linux"); // if (client.requestPseudoTerminal("vt100", 120, 400, 0, 0, // "")) { if (session.startShell()) { OutputStream writer = session.getOutputStream(); writer.write("echo $?\n".getBytes()); writer.flush(); writer.write("exit\n".getBytes()); writer.flush(); BufferedReader in = new BufferedReader(new InputStreamReader(session.getInputStream())); BufferedReader err = new BufferedReader(new InputStreamReader(session.getStderrInputStream())); String line; while ((line = in.readLine()) != null) { System.out.println(line); } System.out.println("------------------------"); while ((line = err.readLine()) != null) { System.out.println(line); } if (session != null) { session.close(); } } // } } } catch (IOException e) { e.printStackTrace(); } finally { } }}
  • 相关阅读:
    开发mis系统的技术
    Navicat软件与pymysql模块
    5.6作业
    mysql表的查询
    5.5作业
    约束条件
    mysql基本数据类型
    数据库
    网络编程项目
    并发编程四
  • 原文地址:https://www.cnblogs.com/xinzhuangzi/p/4100495.html
Copyright © 2011-2022 走看看