【问题标题】:sending SIGINT CTRL-C using ganymed SSH2?使用 ganymed SSH2 发送 SIGINT CTRL-C?
【发布时间】:2011-03-20 05:21:07
【问题描述】:

我需要终止一个已开始使用 ganymed SSH2 的进程。具体来说,我想使用 Ctrl+C 优雅地杀死它。我已经看到了尝试发送 ASCII \x03 的想法,但是在使用 execCommand() 时它不会使用转义字符。如何通过 ganymed 发送 Ctrl+C SIGINT?

如果我应该使用另一个 Java SSH 应用程序,请告诉我,我研究了 Jsch、sshj,但发现 ganymed ssh2 是最简单的。

我要杀死的程序是 tethereal (wireshark)

【问题讨论】:

    标签: java ssh jsch sigint


    【解决方案1】:

    我已经用这个和 JSch 成功发送了 Ctrl+C:

    JSch jsch = new JSch();
    Session session = jsch.getSession(user, host);
    session.setPassword(password);
    session.connect(timeout);
    Channel channel = session.openChannel("shell");
    channel.connect();
    OutputStream out = channel.getOutputStream();
    ...
    out.write(3); // send CTRL-C
    out.flush();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-02
      • 2011-08-26
      • 1970-01-01
      • 1970-01-01
      • 2010-10-23
      • 1970-01-01
      相关资源
      最近更新 更多