gpt4 book ai didi

java - 通过 IRC 的 SSH 客户端输出

转载 作者:太空宇宙 更新时间:2023-11-04 05:26:42 24 4
gpt4 key购买 nike

我目前正在用 Java 开发一个小型机器人,并在 Raspberry Pi 上运行。这些 Raspberry Pi 连接到我 friend 经营的一些商店中的 DSL 路由器。目的是使用 nmap 来监控他商店中的不同事物,例如正常运行时间、客户端正常运行时间等。

我已经使用 PircBot 实现了 IRC 客户端.

此外,我还使用过 Jsch作为我的 SSH 客户端。我按照示例 SSH 客户端之一在 Java 控制台中获取 shell 输出。

现在,我想做的是将其输出到 JircBot 的 sendMessage() 方法中。我的 Jsch 客户端目前使用 channel.setOutPutStream(System.out)

如何让 Jsch 通过 JircBot 的 sendMessage() 输出?

PS:SSH客户端在本地连接,甚至可能有更智能的方法在Raspberry Pi上执行命令,而不是在本地使用SSH,并通过PircBot输出shell?

亲切的问候

最佳答案

如果您只是尝试运行本地命令,则无需使用 SSH。我建议您看一下 Apache commons-exec libraries ,这将允许您在 Rasperry Pi 上运行命令,而无需身份验证和建立安全连接的开销。

就您而言,您可以使用它将消息转发到 PircBot API:

Executor ex = new DefaultExecutor();
ex.setStreamHandler(new PumpStreamHandler(new LogOutputStream() {
@Override
protected void processLine(String line, int level) {
// Call PircBot's sendMessage() passing line
}
}));
int exitValue = ex.execute("command to execute locally");

关于java - 通过 IRC 的 SSH 客户端输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30483745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com