首页 >Java >java教程 >Java 如何检索 Unix 和 Windows 系统上当前正在运行的进程的综合列表?

Java 如何检索 Unix 和 Windows 系统上当前正在运行的进程的综合列表?

DDD
DDD原创
2024-12-11 21:02:14382浏览

How Can Java Retrieve a Comprehensive List of Currently Running Processes on Both Unix and Windows Systems?

检索当前进程的完整列表

为了获取本地计算机上当前活动窗口和进程的完整列表,Java 提供了多功能解决方案。通过利用无处不在的“ps -e”命令,您可以轻松捕获基于 Unix 的系统上所有正在运行的进程的数据。

try {
    String line;
    Process p = Runtime.getRuntime().exec("ps -e");
    BufferedReader input =
            new BufferedReader(new InputStreamReader(p.getInputStream()));
    while ((line = input.readLine()) != null) {
        System.out.println(line); //<-- Parse data here.
    }
    input.close();
} catch (Exception err) {
    err.printStackTrace();
}

这种方法使您能够询问和解析进程列表,从而提供对有价值的信息,例如进程 ID、名称、状态等。

对于 Windows 系统,需要稍微不同的实现。应使用“tasklist.exe”实用程序,如下面的代码片段所示:

Process p = Runtime.getRuntime().exec
    (System.getenv("windir") +"\system32\"+"tasklist.exe");

捕获此数据后,您可以解析它以提取所需的信息,例如进程名称、状态和使用情况统计数据。这种多功能方法允许跨平台解决方案仅使用 Java 检索当前进程的完整列表。

以上是Java 如何检索 Unix 和 Windows 系统上当前正在运行的进程的综合列表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn