首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Mac上使用JAVA获取nload的输出

如何在Mac上使用JAVA获取nload的输出
EN

Stack Overflow用户
提问于 2015-01-14 02:38:12
回答 1查看 155关注 0票数 0

我使用nload来获取实时带宽。我想使用java来收集这些数据,并将它们转储到一个文件中。但它不能与正常的代码一起工作。它什么也没显示。谁能告诉我如何使用像nload或top这样的命令行获取数据?它们显示的是动态数据,而不是输出像pwd或ls这样的静态字符串。

代码语言:javascript
复制
private String executeCommand(String command) {

        StringBuffer output = new StringBuffer();

        Process p;
        try {
            p = Runtime.getRuntime().exec("top");
            p.waitFor();
            BufferedReader reader = 
                            new BufferedReader(new InputStreamReader(p.getInputStream()));

                        String line = "";           
            while ((line = reader.readLine())!= null) {
                output.append(line + "\n");
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return output.toString();

    }
EN

回答 1

Stack Overflow用户

发布于 2015-01-14 06:55:23

我已经解决了我的问题,但我仍然想分享我的解决方案。

给定top将刷新输出,实际上它不会转储输出,因此它只需要转储数据一次,然后停止刷新。

代码语言:javascript
复制
Linux:
top -bn1 
OS X: 
top -l 1

因此,您可以像往常一样捕获输出。

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

https://stackoverflow.com/questions/27929142

复制
相关文章

相似问题

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