获取 Windows、OSX 和 Linux 进程的 PID

Getting PID of Process on Windows, OSX and Linux

我有一个 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 OS,我什么都没有,所以如果您能够 post 一些新代码,请验证一下?

谢谢!

jps 手动输入的含义是 jps 应该在所有(支持 Oracle 的)平台上工作,并且输出格式是相同的。