1

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

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

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

4

1 回答 1

5

我已经将它与 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();
于 2011-03-20T05:25:09.693 回答