如何在Solaris下获得平均负载(仅负载平均值)?


2

我正在寻找cat /proc/loadavgLinux sysctl -n vm.loadavg下或FreeBSD 下的等效,但对于Solaris。Solaris没有/proc/loadavg或者sysctl

我不想输出w或者uptime,我想要负载平均值。例如,我想:

0.53 0.39 0.80

不:

13:30:44 up 51 days,  8:43,  2 users,  load average: 0.46, 0.39, 0.79

在Solaris下,什么终端命令将为我提供1分钟,5分钟和10分钟的平均负载,以及负载平均值?

Answers:


4

您可以使用awk仅返回正常运行时间中的最后3个字段:

uptime | awk '{print $(NF-2)" "$(NF-1)" "$(NF-0)}'

编辑:

如果您不想使用逗号,可以使用sed或tr删除它们:

uptime | awk '{print $(NF-2)" "$(NF-1)" "$(NF-0)}' | tr "," " "

uptime | awk '{print $(NF-2)" "$(NF-1)" "$(NF-0)}' | sed 's/,/ /g'

1

不完全相同的格式,但也许可以使用取决于你想用它做什么:

kstat -p 'unix:0:system_misc:avenrun*' | \
 awk '{printf "%s %.2f\n", $1, $2 / 256.0}'

kstat命令的原始输出(在kstat(1m)手册页中描述)是:

% kstat -p 'unix:0:system_misc:avenrun*'
unix:0:system_misc:avenrun_15min    42
unix:0:system_misc:avenrun_1min 17
unix:0:system_misc:avenrun_5min 25

将kstats除以256可提供更熟悉的输出。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.