在Windows,OSX和Linux上获取进程的PID

时间:2015-06-07 08:16:05

标签: java linux windows macos pid

我有一个java函数应该获取进程的PID并且它可以在windows上运行

public static String executeJps() throws IOException {
        Process p = Runtime.getRuntime().exec("jps -l");
        String line = null;
        BufferedReader in = new BufferedReader(new InputStreamReader(
                                                    p.getInputStream(), "UTF-8"));

        String pid = null;
        while ((line = in.readLine()) != null) {
            String [] javaProcess = line.split(" ");
            if (javaProcess.length > 1 && javaProcess[1].contains("DEDServer")) {
                pid = javaProcess[0];
            }
        }

        return pid;
}

同样的功能是否会在mac和Linux操作系统以及基本上所有操作系统上成功获得PID?或者还有其他需要做的事情吗?

我没有任何东西,只有Windows操作系统,所以如果你能够发布一些新的代码,请进行验证吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

jps手册条目的含义是jps应该适用于所有(Oracle支持的)平台,并且输出格式是相同的。