11.7. 负载

uptime 命令的输出可以用来确定系统负载和运行时间,但其输出非常难以解析。在 Linux 系统上,由于存在/proc/文件系统,这使得处理变得容易得多。cat /proc/loadavg 命令将显示一分钟、五分钟和十五分钟的平均负载,以及我不知道其含义的其他几个数字(有人愿意解释一下吗?)。

从 /proc/loadavg 获取负载很容易(感谢 Jerry Peek 提醒我这个简单的方法)read one five fifteen rest < /proc/loadavg。只需打印您想要的值即可。

对于那些没有/proc/文件系统的用户,您可以使用 uptime | sed -e "s/.*load average: \(.*\...\), \(.*\...\), \(.*\...\)/\1/" -e "s/ //g",并根据您想要一分钟、五分钟还是十五分钟的平均负载,将 "\1" 替换为 "\2" 或 "\3"。这是一个非常丑陋的正则表达式:如果您有更好的,请发送建议。

相对速度:'uptime | sed -e "s/.*load average: \(.*\...\), \(.*\...\), \(.*\...\)/\1/" -e "s/ //g" ' 在一台空闲的 486SX25 上大约需要 0.21 秒。