0
我试图从Ubuntu使用Java获取所有正在运行的进程的列表。如何使用Java获取Ubuntu上所有正在运行的进程的列表?
我试着运行“顶部”并解析响应。
我的问题是,“顶部”命令启动一个可以被用户杀死的进程。
我尝试这样做:
public void execute()
{
try{
ProcessBuilder build = new ProcessBuilder("top");
Process proc = build.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line;
while((line = reader.readLine()) != null)
{System.out.println("wait");
System.out.println(line);
}
proc.waitFor();
reader.close();
}
catch(IOException e)
{
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我无法得到回应,因为该命令仍在执行。
如何停止进程然后获得其响应? (这又因为我要更新的信息)
编辑:独特部分:详述有关正在运行的进程(如MEM消耗,CPU)的信息“顶部”命令显示,该数据被不断如此更新它是不可能简单地运行它并采取响应。
[如何使用Java获取正在运行的进程的列表](http://stackoverflow.com/questions/20472639/how-to-get-list-of-running-processes-with-java) – Joe