在 Linux 中,free
命令的 used
(已用内存)包含了 buff/cache
,但缓存是可以随时释放的,不代表真实的内存占用
使用率 = (1 − available /total) ×100free | awk '/Mem:/ {printf("Actual Used Memory: %.2f%\n", (1 - $7/$2) * 100)}'说明:1、/Mem:/ 是 模式匹配,表示 awk 只处理包含 Mem: 的那一行。这样 awk 只会处理这一行,而不会处理 Swap: 或其他无关内容。2、printf("Actual Used Memory: %.2f%\n", (1 - $7/$2) * 100)$2 = total(总内存)$7 = available(可用内存)3、printf("Actual Used Memory: %.2f%\n", ...)%.2f → 保留 2 位小数\n → 换行,保持输出整洁输出格式: