• 通过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 { } }}
  • 相关阅读:
    简单区分Vmware的三种网络连接模式(bridged、NAT、host-only)
    linux创建账户并自动生成主目录和主目录下的文件
    EF 通用数据层类
    html在线美化网站
    图片在页面中居中显示
    __dopostback的用法
    rdlc报表集锦
    .NET开源免费的功能强大控件库
    使用webclient上传下载实例
    消息队列将并发变串行
  • 原文地址:https://www.cnblogs.com/xinzhuangzi/p/4100495.html
Copyright © 2020-2023  润新知