UNPKG

hdd-space

Version:

This module provides getting information about free space and size of hdds

66 lines (64 loc) 3.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var parse_columns_1 = require("parse-columns"); function parseDf(output) { var extractTable = { 3: 'free', 5: 'mp', 1: 'size' }; var res = []; parse_columns_1.default(output, { transform: function (value, header, columnIndex, rowIndex) { var key = extractTable[columnIndex]; if (!key) { return; } var row = res[rowIndex - 1]; if (!row) { row = {}; res[rowIndex - 1] = row; } row[key] = key === 'mp' ? value : Number(value); } }); return res; } /* [df] output example: Filesystem 1K-blocks Used Available Use% Mounted on rootfs 15506408 1149728 13708188 8% / /dev/root 15506408 1149728 13708188 8% / devtmpfs 447624 0 447624 0% /dev tmpfs 89548 208 89340 1% /run tmpfs 5120 0 5120 0% /run/lock tmpfs 179080 0 179080 0% /run/shm */ function parseUnixOutput(output) { var parsed = parseDf(output.trim()); var root = null; var parts = parsed .map(function (part) { var res = { size: part.size * 1024, free: part.free * 1024, place: part.mp, mountOn: part.mp }; if (part.mp === '/') { root = res; } return res; }); var total = { size: root.size, free: root.free }; return { parts: parts, total: total }; } exports.parseUnixOutput = parseUnixOutput; exports.unixCmd = 'df -Pk'; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5peC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy91bml4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0NBQXlDO0FBZXpDLGlCQUFpQixNQUFjO0lBQzlCLElBQU0sWUFBWSxHQUFpQjtRQUNsQyxDQUFDLEVBQUUsTUFBTTtRQUNULENBQUMsRUFBRSxJQUFJO1FBQ1AsQ0FBQyxFQUFFLE1BQU07S0FDVCxDQUFDO0lBQ0YsSUFBSSxHQUFHLEdBQWUsRUFBRSxDQUFDO0lBQ3pCLHVCQUFZLENBQUMsTUFBTSxFQUFFO1FBQ3BCLFNBQVMsRUFBRSxVQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFFBQVE7WUFDL0MsSUFBTSxHQUFHLEdBQW1CLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN0RCxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ1YsTUFBTSxDQUFDO1lBQ1IsQ0FBQztZQUNELElBQUksR0FBRyxHQUFhLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDdEMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNWLEdBQUcsR0FBRyxFQUFjLENBQUM7Z0JBQ3JCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxLQUFLLElBQUksR0FBRyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELENBQUM7S0FDRCxDQUFDLENBQUM7SUFDSCxNQUFNLENBQUMsR0FBRyxDQUFDO0FBQ1osQ0FBQztBQUVEOzs7Ozs7Ozs7OztNQVdHO0FBRUgseUJBQWdDLE1BQWM7SUFDN0MsSUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLElBQUksSUFBSSxHQUFRLElBQUksQ0FBQztJQUNyQixJQUFNLEtBQUssR0FBVyxNQUFNO1NBQzFCLEdBQUcsQ0FBQyxVQUFDLElBQUk7UUFDVCxJQUFNLEdBQUcsR0FBRztZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUk7WUFDdEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSTtZQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7U0FDaEIsQ0FBQztRQUNGLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNyQixJQUFJLEdBQUcsR0FBRyxDQUFDO1FBQ1osQ0FBQztRQUNELE1BQU0sQ0FBQyxHQUFHLENBQUM7SUFDWixDQUFDLENBQUMsQ0FBQztJQUNKLElBQU0sS0FBSyxHQUFHO1FBQ2IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO0tBQ2YsQ0FBQztJQUNGLE1BQU0sQ0FBQztRQUNOLEtBQUssT0FBQTtRQUNMLEtBQUssT0FBQTtLQUNMLENBQUM7QUFDSCxDQUFDO0FBeEJELDBDQXdCQztBQUVZLFFBQUEsT0FBTyxHQUFHLFFBQVEsQ0FBQyJ9