`
myway84
  • 浏览: 201944 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
文章分类
社区版块
存档分类
最新评论

java执行top命令

阅读更多
解释:

使用Runtime.getRuntime().exec(command) 可以直接调用linux的命令,比如执行‘ls’,‘cat’命令等,代码:
Runtime.getRuntime().exec(‘ls’);
但是Runtime.getRuntime().exec(command) 返回的是一个Process类的实例对象,返回的实力对象可以控制进程或者获取进程的信息,
调用Runtime.exec方法将产生一个本地的进程,由于调用Runtime.exec方法所创建的子进程没有自己的终端或控制台,

因此该子进程的标准IO(如stdin,stdou,stderr)都通过Process.getOutputStream(),
Process.getInputStream(),   Process.getErrorStream()等方法重定向给它的父进程,
用户可以这些stream获取子进程的输入和输出信息。

另外需要主要的是,如果执行ls命令,可以直接将command赋值为‘ls’,但是command如果赋值为‘top’最终是打印不出结果的,需要是使用
‘top –b –n 1’,“-n 1”表示top命令只执行一次。

package com.easymorse.mail;

import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;

public class ServerData {

    public String getServerTopCommandContent() {

        Process process;
        String allcontent = "";
        try {
            process = Runtime.getRuntime().exec   ("top -b -n 1");
             InputStreamReader   ir= new InputStreamReader(process.getInputStream());
                LineNumberReader   input   =   new   LineNumberReader   (ir);    

                String   line;
                while   ((line   =   input.readLine   ())   !=   null){
                  //System.out.println(line); 
                    line = line + "<br />";
                    allcontent += line;
                }

        } catch (IOException e) {

            e.printStackTrace();
        }   //   表示只执行一次就自动退出,   
      }

}
 
分享到:
评论

相关推荐

    java调用linuex命令

    Java提供了多种方式来执行外部命令或脚本,其中最常用的是通过`Runtime`类的`exec`方法。具体而言,`Runtime.getRuntime().exec(command)`是执行Linux命令的标准方法。例如,要执行`ls`命令列出当前目录下的文件和...

    java开发中常用的linux命令汇总

    在Java开发过程中,熟悉Linux操作系统的基本命令是必不可少的技能。Linux命令行提供了高效、强大的工具,可以帮助开发者进行项目管理、调试、系统监控等任务。以下是一些Java开发中常用的Linux命令,它们对于优化...

    Java 监控 运行时

    - **系统CPU和Java进程CPU**:通过`top`或`jstat`命令监控CPU使用率,过高可能表示存在性能瓶颈或资源争抢,需要进一步定位问题。 - **方法级CPU消耗**:通过剖析工具如JProfiler,可以细化到具体方法的CPU消耗,...

    Linux命令查看java版本

    3. **性能监控**:`top`命令提供了实时系统资源使用的概览。用户可以通过按下Shift键+“m”对进程按照内存使用量进行排序,以便更好地了解哪些进程占用较多内存资源。 4. **环境变量查看**:使用`env`命令可以查看...

    Linux的top命令解析_docx1

    `top` 命令在`Linux`环境中对于系统性能的实时监控和故障排查至关重要,尤其在Java开发和运维中,它可以快速定位到消耗资源最多的进程,从而优化系统性能。通过对`top`命令的熟练掌握,我们可以更有效地管理和优化`...

    解决java程序运行慢问题.doc

    解决 Java 程序运行慢问题首先需要了解整个 CPU 资源使用情况,可以使用 top 命令来查看 CPU 资源使用情况。通过 top 命令可以了解当前系统的 CPU 使用率、内存使用率、进程列表等信息。 二、 Java 进程的每一个...

    java获取各进程的信息

    下面通过一个示例程序来具体说明如何使用Sigar来获取进程的PID、用户、启动时间、大小、所占内存、状态、运行时间、CPU使用率以及命令等信息。 #### 示例代码分析 ```java private static final int SLEEP_TIME = ...

    java调用openssl生成证书

    - Java运行系统命令:`Runtime.getRuntime().exec()`或`ProcessBuilder`。 - 安全考量:避免命令注入,可能使用Java内置库或第三方库进行证书管理。 - 数字证书和SSL/TLS协议的基础知识。 - Java与外部工具交互的...

    R12.2客户化JAVA程序发布说明

    3. 在 $JAVA_TOP 下执行生成 jar 包命令。 4. 修改 $FND_TOP/admin/template/ebsProductManifest_xml.tmp 文件(先备份),添加如下行:&lt;library&gt;customprod.jar 5. 执行 adautocfg,完成系统更新。 6. 重启应用服务...

    java程序 绘制动态曲线

    java类,通过运行dos命令,txt文件可以像exe一样运行,数据由随机数产生,可以动态的显示曲线,以循环的方式实现动态显示

    简易java运维工具

    2. Shell命令执行:Java程序可以调用Runtime或ProcessBuilder类来执行Linux Shell命令,如`ls`, `ps`, `top`等,获取服务器状态信息。 3. 自定义脚本:将Java与Shell脚本结合,可以创建复杂的运维流程,比如定期...

    Java、Linux基础命令笔记.zip

    Java程序通过编译成字节码,可以在任何安装了Java虚拟机(JVM)的平台上运行,这使得Java具备了跨平台的能力。在Java基础部分,笔记可能会涵盖以下内容: 1. **环境配置**:如何安装Java开发工具包(JDK),设置...

    JAVA上百实例源码以及开源项目

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    java引起的linux服务器性能问题查找

    1. **启动top命令**:首先通过命令行输入`top`来启动top命令。该命令能够实时显示当前系统中各个进程的资源使用情况。 2. **切换至线程模式**:在top命令界面中,默认显示的是进程级别的资源占用情况。为了更细致地...

    java监控开发示例

    例如,我们可以使用`java.lang.Runtime.exec()`方法执行操作系统特定的命令,然后解析返回的输出结果。 在实际项目中,通常会构建一个服务端应用,该应用定期收集远程系统的数据,并存储到数据库或者日志文件中。...

    Java堆栈分析服务器

    分析`jstack`输出的线程堆栈,我们需要重点关注那些长时间运行或重复执行的线程,它们可能是CPU资源占用高的主要原因。常见的问题可能包括无限循环、锁竞争、计算密集型任务没有合理优化等。针对发现的问题,我们...

    java需要掌握的linux命令.pdf

    Linux不仅在服务器端广泛使用,而且许多开发工具和框架也在Linux环境下运行良好。以下是一些Java程序员需要掌握的Linux基础知识: 1. **用户和账户管理**: - `userdel`:删除一个用户账户。 - `useradd`:创建新...

    java开源包6

    淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...

    JAVA 部署LINUX

    4. **部署JAR应用**: 对于独立的Java应用,可以直接通过`java -jar`命令执行JAR文件。如果需要后台运行,可以使用`nohup`或`screen`命令。 5. **部署WAR应用**: 如果是Web应用,通常需要将WAR文件部署到Web服务器或...

    java开源包9

    淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...

Global site tag (gtag.js) - Google Analytics