首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在java中解析virt-top

在java中解析virt-top
EN

Stack Overflow用户
提问于 2014-08-14 21:22:06
回答 2查看 394关注 0票数 0

是否可以使用Java解析virt-top命令的结果?

我做的第一件事是在java中运行virt-top命令。

代码语言:javascript
复制
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec("virt-top -n 5");

但我在控制台中看不到任何输出。我使用eclipse作为我的编辑器。我的目标是获得客户机的CPU和内存使用情况,所以我使用virt-top,并计划解析结果。

任何帮助都将不胜感激。谢谢!

更新:

我使用了我在互联网上找到的代码。我能够使用命令"virt-top --stream -n 2“获得所需的输出。但我现在的问题是解析结果。

1次迭代的示例如下所示,

代码语言:javascript
复制
"virt-top time  04:25:54 Host localhost.localdomain x86_64 4/4CPU 2301MHz 7465MB 
   ID S RDRQ WRRQ RXBY TXBY %CPU %MEM   TIME    NAME
    1 R    0    0    0    0  0.0  0.0   0:06.42 CentOS"

我只需要获取%CPU和%MEM。

EN

回答 2

Stack Overflow用户

发布于 2014-08-14 21:29:36

使用创建的进程的inputstream读取生成的输出。

代码语言:javascript
复制
pr.getInputStream()

请参阅http://docs.oracle.com/javase/7/docs/api/java/lang/Process.html

票数 0
EN

Stack Overflow用户

发布于 2014-08-14 21:33:10

通常,您需要通过Process.getInputStream()使用Process对象的输出

另外,您可能应该通过Process.getErrorStream()使用和显示stderr。

最后,如果virt-top是基于诅咒的,那么您可能希望禁用ctl字符。这是通过使用带有-b开关的top命令实现的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25309101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档