UNPKG

hdd-space

Version:

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

53 lines (52 loc) 3.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function getTotal(parts) { return parts.reduce(function (total, part) { total.size += part.size; total.free += part.free; return total; }, { size: 0, free: 0 }); } /* [wmic logicaldisk get size,freespace,caption] output example: Caption FreeSpace Size C: 1286164480 34359734272 D: 1864638464 50925137920 E: F: 77553082368 990202818560 G: L: */ function parseWin32Output(output) { var parts = output .split('\n') .slice(1) // remove header .map(function (line) { var lineParts = line.split(/[\s]+/g); var partInfo = { place: lineParts[0], letter: lineParts[0], free: parseInt(lineParts[1]), size: parseInt(lineParts[2]) }; if (isNaN(partInfo.free) || isNaN(partInfo.size) || partInfo.place === '') { return null; } return partInfo; }) .filter(function (part) { return !!part; }); return { parts: parts, total: getTotal(parts) }; } exports.parseWin32Output = parseWin32Output; exports.win32Cmd = 'wmic logicaldisk get size,freespace,caption'; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2luMzIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvd2luMzIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxrQkFBa0IsS0FBYTtJQUM5QixNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFDLEtBQUssRUFBRSxJQUFJO1FBQy9CLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQztRQUN4QixLQUFLLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDeEIsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUNkLENBQUMsRUFBRTtRQUNGLElBQUksRUFBRSxDQUFDO1FBQ1AsSUFBSSxFQUFFLENBQUM7S0FDUCxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7RUFVRTtBQUVGLDBCQUFpQyxNQUFjO0lBQzlDLElBQU0sS0FBSyxHQUFHLE1BQU07U0FDbEIsS0FBSyxDQUFDLElBQUksQ0FBQztTQUNYLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0I7U0FDekIsR0FBRyxDQUFDLFVBQVMsSUFBSTtRQUNqQixJQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLElBQU0sUUFBUSxHQUFTO1lBQ3RCLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ25CLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3BCLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVCLENBQUM7UUFDRixFQUFFLENBQUMsQ0FDRixLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNwQixRQUFRLENBQUMsS0FBSyxLQUFLLEVBQ3BCLENBQUMsQ0FBQyxDQUFDO1lBQ0YsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNiLENBQUM7UUFDRCxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQ2pCLENBQUMsQ0FBQztTQUNELE1BQU0sQ0FBQyxVQUFTLElBQUk7UUFDcEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDZixDQUFDLENBQVcsQ0FBQztJQUNkLE1BQU0sQ0FBQztRQUNOLEtBQUssT0FBQTtRQUNMLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDO0tBQ3RCLENBQUM7QUFDSCxDQUFDO0FBNUJELDRDQTRCQztBQUVZLFFBQUEsUUFBUSxHQUFHLDZDQUE2QyxDQUFDIn0=