java获取服务器信息返回前端,java程序获取linux服务器进程信息

搜索了很多关于获取Linux的信息,但是没有发现获取linux服务器的进程信息详细说明。

在这里求解一下,能否在java代码中实现读取代码执行的本机linux服务器中的进程信息?

该问题又分为三个小问题:

1:能否指定只获取某个用户下的进程信息?

2:能否获取指定进程的信息?

3:能否获取到类似ps -ef和ps aux两个命令下的多维度信息?

我现在有的思路是使用Runtime.getRuntime().exec()调用shell来获取信息,但是我希望在不使用shell的情况下得到这些信息,就类似于直接通过调用java.net.InetAddress可以获取到IP信息一样,能否存在这样封装的包实现?

恳求指教!谢谢!

回答:

既然exec,又想要ps -ef, 为何不exec(“ps -ef”)

public static void main(String[] args) throws Exception {

try {

String line;

Process p = Runtime.getRuntime().exec( "ps -ef" );

BufferedReader in = new BufferedReader(

new InputStreamReader(p.getInputStream()) );

while ((line = in.readLine()) != null) {

System.out.println(line);

}

in.close();

}

catch (Exception e) {

// ...

}

}

回答:

https://github.com/oshi/oshi

github上得一个开源项目,可以获取硬盘和CPU信息,可以试试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值