jsm-utilities
Version:
A utilities library.
22 lines (21 loc) • 939 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getDiskUsage = getDiskUsage;
const child_process_1 = require("child_process");
function getDiskUsage(path = "/") {
return new Promise((resolve, reject) => {
(0, child_process_1.exec)(`df -k '${path}'`, (error, stdout) => {
if (error)
return reject(error);
const lines = stdout.trim().split("\n");
if (lines.length < 2)
return reject(new Error("Unexpected df output"));
const parts = lines[1].split(/\s+/);
const size = parseInt(parts[1], 10) * 1024; // total in bytes
const used = parseInt(parts[2], 10) * 1024; // used in bytes
const available = parseInt(parts[3], 10) * 1024;
const percent = parseInt(parts[4].replace("%", ""), 10);
resolve({ size, used, available, percent });
});
});
}