使用ksh和正常运行时间获得最后五分钟的平均负载

Rei*_* SE 2 unix ksh uptime cpu-usage

为了平均CPU负载,我uptimeksh脚本中使用:

uptime | awk '{print $11}' | sed '$s/.$//' | read CPU
Run Code Online (Sandbox Code Playgroud)

然后我在那里使用变量CPU.

$11部分是为了隔离最后五分钟的部分.但是,我今天注意到这不起作用.具体来说,最后五分钟部分返回$9.该函数返回的参数较少.这是因为机器最近重新启动,因此uptime显示自重启后的分钟而不是几天和几分钟.

有没有办法让我能够始终只获得正常运行时间的最后五分钟?

Ric*_*lli 7

cut -d ' ' -f2 /proc/loadavg
Run Code Online (Sandbox Code Playgroud)

/ proc/loadvg是正常运行时间,w,谁和其他人的数据来源.它有一个更简单的格式,数字在小数部分之前总是有一个点(正常运行时间,这样使用当前的语言环境,所以你可能会发现像

平均负载:0,18,0,26,0,30

哪个更难解析

加上一个令人难以置信的低因子!;-)