Различные утилиты, мониторинга нагрузки системы, могут отображать как общую нагрузку на процессор, так и по ядрам. При этом явного механизма, который позволит получить текущий уровень нагрузки в bash скрипте нет.
Информацию о текущей загрузке мы можем получить из
1 | cat /proc/stat |
Но эта статистика, в чистом виде, не совсем то что необходимо.
Для получения нужного значения, данные необходимо преобразовать
1 | awk '{u=$2+$4; t=$2+$4+$5; if (NR==1){u1=u; t1=t;} else print ($2+$4-u1) * 100 / (t-t1); }' <(grep 'cpu ' /proc/stat) <(sleep 1;grep 'cpu ' /proc/stat) |
В результате вернется текущая общая загрузка CPU