【发布时间】:2014-02-26 15:58:06
【问题描述】:
我正在用 Java 开发一个小型实用程序,用于监控远程 Linux 机器的 CPU。我正在使用 sar 命令来监控它。问题是,当我写 sar 1 1 时,需要一些时间来获得 CPU 使用率。我尝试了sar 0,但它显示的是相同的 cpu 值,而不是在线 cpu 使用情况。我该怎么做才能立即使用 cpu?
【问题讨论】:
我正在用 Java 开发一个小型实用程序,用于监控远程 Linux 机器的 CPU。我正在使用 sar 命令来监控它。问题是,当我写 sar 1 1 时,需要一些时间来获得 CPU 使用率。我尝试了sar 0,但它显示的是相同的 cpu 值,而不是在线 cpu 使用情况。我该怎么做才能立即使用 cpu?
【问题讨论】:
一种选择是:
top
或
top | grep <App_name>
或
ps -p <app_pid> -o %cpu
编辑
只获取某个pid的cpu使用百分比数:
ps -p PID -o %cpu | sed 's/[^0-9]//g' | tr -d '\n'
或
ps -p PID -o %cpu | sed -n 2p | sed 's/ //'
【讨论】: