#!/bin/sh # Beispiel für FreeBSD/macOS-nahe Erfassung TOTAL=$(sysctl -n hw.memsize 2>/dev/null || sysctl -n hw.physmem) PHYS=$(sysctl -n hw.physmem 2>/dev/null || echo "$TOTAL") REAL=$(sysctl -n hw.realmem 2>/dev/null || echo "$PHYS") PAGE_SIZE=$(sysctl -n hw.pagesize 2>/dev/null || echo 4096) FREE_PAGES=$(sysctl -n vm.stats.vm.v_free_count 2>/dev/null || echo 0) AVAILABLE=$((FREE_PAGES * PAGE_SIZE)) echo " TOTAL: ${TOTAL} PHYS: ${PHYS} REAL: ${REAL} AVAILABLE: ${AVAILABLE} " | grep -Ev '^[[:space:]]*$' | awk '{a=$2; b="B"; if ($2 > 1024) {a=$2/1024; b="KiB"}; if ($2 > 1048576) {a=$2/1024^2; b="MiB"}; if ($2 > 1073741824) {a=$2/1024^3; b="GiB"}; printf "%s\t%s %s\n", $1,a,b}'