猿问

如何在Linux上获得整体CPU使用率(例如57%)

如何在Linux上获得整体CPU使用率(例如57%)

我想知道如何使用bash获取系统CPU使用率并以百分比形式显示它。

样本输出:

57%

如果有一个以上的核心,如果可以计算平均百分比,那就太好了。


动漫人物
浏览 1222回答 3
3回答

眼眸繁星

看一眼 cat /proc/statgrep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}'编辑请在复制粘贴之前阅读评论或将其用于任何认真的工作。这没有经过测试也没有使用过,对于那些不想安装实用程序的人或任何在任何发行版中工作的人来说都是一个想法。有些人认为你可以“apt-get install”任何东西。注意:这不是当前的 CPU使用率,而是自系统启动以来所有核心的总体CPU使用率。这可能与当前的CPU使用率有很大不同。必须使用当前值(或类似工具)。

森栏

你可以试试:top -bn1 | grep "Cpu(s)" | \            sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | \            awk '{print 100 - $1"%"}'

叮当猫咪

mpstat从sysstat包中试试> sudo apt-get install sysstatLinux 3.0.0-13-generic (ws025)  02/10/2012  _x86_64_    (2 CPU)  03:33:26 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle03:33:26 PM  all    2.39    0.04    0.19    0.34    0.00    0.01    0.00    0.00   97.03然后一些cut或grep解析你需要的信息:mpstat | grep -A 5 "%idle" | tail -n 1 | awk -F " " '{print 100 -  $ 12}'a
随时随地看视频慕课网APP
我要回答