Load Average をワンライナーで取るコマンド

uptime コマンドから、load averages の直近1分の値をワンライナーで取る。uptime コマンド(CentOS7で実行)は、load average: の後に過去1分間、5分間、15分間のロードアベレージが出る。

Linux の出力例

$ uptime
12:53:16 up  3:26,  1 user,  load average: 0.00, 0.03, 0.61

OSX の出力例

$ uptime
23:11  up 11:10, 1 users, load averages: 1.85 1.70 2.15

awk の $1 を、$2,$3とすると過去5分、15分の値になる。OSXでuptimeすると、load average: (最後のsがない) のと、数字がLinuxはカンマ付きでOSXはカンマなしなので、下記のような正規表現で差異を吸収する。

uptime | sed -E 's/.*load averages?:(.*)/\1/' | awk '{print $1}' | sed -e 's/,//'

Contents