有没有办法使用Java我可以获得在Mac上运行的所有活动进程的列表?
我可以在Windows中使用以下代码返回任务列表,但会在Mac上引发异常。如果某些应用程序也在运行,我希望我的应用程序停止。
有什么想法吗?感谢。
Windows代码:
Process p = Runtime.getRuntime().exec("tasklist.exe /nh");
BufferedReader input = new BufferedReader
(new InputStreamReader(p.getInputStream()));
//while there are more processes in the task manager list
while ((line = input.readLine()) != null) {
//insert code here for each task running
}
答案 0 :(得分:2)
String line;
String sysUserName=System.getProperty("user.name");
Process p = Runtime.getRuntime().exec("tasklist /fi \"username eq"+sysUserName+"\""); // for windows
// Process p = Runtime.getRuntime().exec("ps -u "+sysUserName+""); // for mac
BufferedReader input =
new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
System.out.println(line); //<-- Parse data here.
}
input.close();
答案 1 :(得分:1)
Mac上不存在tasklist.exe。使用类似ps -eaf
的东西