#!/bin/ksh linux_server() { while true do printf " %s   %3s%%   %s°C   %s (priv)   %4sMhz  \n" \ "$(who | cut -d" " -f1 | sort -u | wc -l)" \ "$(ps -u d034266 -o pcpu | awk '/[0-9\.]/ { s=s+$1 } END { printf("%.0d\n", s); }')" \ "$(sensors | awk '/^Core/ { s=$3+s } END { printf("%2d\n", s/60); }')" \ "$(df -h --output=avail /priv/ | tail -1)" \ "$(lscpu | awk '/^CPU MHz:/ { printf("%.4d", $3) }')" sleep 5 done } openbsd_laptop() { out() { printf '%s/1000/1000\n' "$1" | bc; } while true do set -A _SYSV -- $(sysctl -n hw.sensors.cpu0.temp0 \ hw.sensors.acpithinkpad0.fan0 \ hw.cpuspeed \ | cut -d" " -f1) _TMP="$(sysctl -n hw.sensors.cpu{0,1,2,3,4,5,6,7,8,9,10,11}.frequency0 \ | cut -d. -f1)" AVG="$(printf '(%s)/12' "$_TMP" | tr '\n' '+')" printf " %s%%   %2s°C   %4sRPM   %4sMhz (~%4sMhz)  \n" \ "$(apm -l)" "${_SYSV[0]}" "${_SYSV[1]}" "${_SYSV[2]}" "$(out $AVG)"; sleep 5 done } case $(hostname) in ld*) linux_server; ;; *.home.codevoid.de) openbsd_laptop; ;; esac