+14
-2
@@ -1,3 +1,15 @@
|
||||
#!/bin/sh
|
||||
# Заполненность RAM в процентах: ps %mem — уже доля от общей памяти, суммируем как есть (mac + linux).
|
||||
ps -A -o %mem | awk '{s+=$1} END {printf "%d", s}'
|
||||
# RAM: процент занятого + строка занято/всего. Linux + mac.
|
||||
# Контракт мониторов: 1-я строка — процент, дальше — key=value.
|
||||
# ponytail: used = сумма RSS процессов (без кэшей ОС) — на mac «доступно» дёшево не получить;
|
||||
# если нужен точный linux used — /proc/meminfo MemAvailable.
|
||||
case "$(uname)" in
|
||||
Darwin) total_kb=$(( $(sysctl -n hw.memsize) / 1024 )) ;;
|
||||
*) total_kb=$(awk '/MemTotal/ {print $2}' /proc/meminfo) ;;
|
||||
esac
|
||||
ps -A -o rss=,%mem= | awk -v t="$total_kb" '
|
||||
{rss+=$1; mem+=$2}
|
||||
END {
|
||||
printf "%d\n", mem
|
||||
printf "занято=%.1f / %.1f ГБ\n", rss/1048576, t/1048576
|
||||
}'
|
||||
|
||||
Reference in New Issue
Block a user