如何从top命令中捕获CPU空闲时间(id)?

8 浏览
0 Comments

如何从top命令中捕获CPU空闲时间(id)?

我正在尝试从top中捕获CPU的空闲时间(id)。

以下代码捕获了负载平均值,我正在尝试修改以下代码,以便捕获CPU的空闲时间。

欢迎任何想法。

top -bn1 | grep load | awk '{printf "CPU负载%: %.2f\n", $(NF-2)}'

上述代码输出:

CPU负载%: 0.44

我想修改代码,使其输出CPU的空闲时间

CPU空闲%: 92.9%

示例Top输出:

top - 10:35:25 up 1 day, 16:06, 5 users, load average: 0.24, 0.16, 0.15

Tasks: 210 total, 2 running, 198 sleeping, 10 stopped, 0 zombie

%Cpu(s): 2.2 us, 0.2 sy, 4.7 ni, 92.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.1 st

KiB内存: 16433064 总计, 1353396 使用, 15079668 空闲, 180944 缓存

KiB交换区: 0 总计, 0 使用, 0 空闲, 700468 缓存内存

PID 用户 PR NI VIRT RES SHR S %CPU %MEM 时间+ 命令

24293 ubuntu 30 10 32828 2576 1608 S 19.3 0.0 0:25.30 fiberlamp

2173 ubuntu 20 0 51200 16496 4952 S 9.3 0.1 263:34.18 Xvnc4

12648 ubuntu 20 0 23668 1732 1180 R 0.3 0.0 0:04.25 top

...

0