2022-09-06 15:07:12 +02:00
|
|
|
import { Terminal } from "../../Terminal";
|
2021-09-16 01:50:44 +02:00
|
|
|
import { BaseServer } from "../../Server/BaseServer";
|
2023-02-11 19:18:50 +01:00
|
|
|
import { formatPercent, formatRam } from "../../ui/formatNumber";
|
2021-09-16 01:50:44 +02:00
|
|
|
|
2022-09-06 15:07:12 +02:00
|
|
|
export function free(args: (string | number | boolean)[], server: BaseServer): void {
|
2021-09-16 01:50:44 +02:00
|
|
|
if (args.length !== 0) {
|
2022-09-06 15:07:12 +02:00
|
|
|
Terminal.error("Incorrect usage of free command. Usage: free");
|
2021-09-16 01:50:44 +02:00
|
|
|
return;
|
|
|
|
}
|
2023-02-11 19:18:50 +01:00
|
|
|
const ram = formatRam(server.maxRam);
|
|
|
|
const used = formatRam(server.ramUsed);
|
|
|
|
const avail = formatRam(server.maxRam - server.ramUsed);
|
2021-09-16 01:50:44 +02:00
|
|
|
const maxLength = Math.max(ram.length, Math.max(used.length, avail.length));
|
2023-02-11 19:18:50 +01:00
|
|
|
const usedPercent = formatPercent(server.ramUsed / server.maxRam);
|
2021-09-16 01:50:44 +02:00
|
|
|
|
2022-09-06 15:07:12 +02:00
|
|
|
Terminal.print(`Total: ${" ".repeat(maxLength - ram.length)}${ram}`);
|
|
|
|
Terminal.print(`Used: ${" ".repeat(maxLength - used.length)}${used} (${usedPercent})`);
|
|
|
|
Terminal.print(`Available: ${" ".repeat(maxLength - avail.length)}${avail}`);
|
2021-09-16 01:50:44 +02:00
|
|
|
}
|