gpt4 book ai didi

java - 如何用java读取另一台机器上运行的进程

转载 作者:太空狗 更新时间:2023-10-29 11:31:49 27 4
gpt4 key购买 nike

我在 json 文件中有一个 IP 列表。我的 Java 应用程序应执行以下操作。

  1. 从 JSON 文件中读取 IP。 [已处理]
  2. 应检查 JSON 文件中提到的机器是否已启动并正在运行。
  3. 如果机器启动了,我的应用程序应该读取在那台计算机上运行。

其他信息:

  1. 我的 java 应用程序将在 Linux 操作系统上运行
  2. JSON 文件中提到的机器也在 Linux 上
  3. 我的应用程序是一个独立的 Java 应用程序。

您能否建议我必须执行此任务的选项?

最佳答案

一种选择是在远程机器上安装/启用 SSH 服务器,然后

  1. 从 JSON 中读取 IP
  2. 对每个 IP 执行类似 ping 的操作以检查其是否可用。 在 Java 中,您可以为此使用 InetAddress#isReachable() 之类的东西。
  3. 使用 SSH 连接到 IP 并发出 ps 等 linux 命令以获取机器中正在运行的进程的列表。在 java 中,您可以使用任何可用的 SSH 库。例如:jsch

您甚至可以跳过第 2 步,直接尝试 SSH 连接,并确定主机是否在那个方向。但是 ping 会更可靠(但要确保没有防火墙设置阻止远程机器响应 ping) .

更新

您可以使用运行时的 exec 命令代替 InetAddress#isReachable() 来运行 native ping 命令。 check this

关于java - 如何用java读取另一台机器上运行的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35607682/

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