nyks
Version:
nodejs exupery style
26 lines (19 loc) • 573 B
JavaScript
;
const exec = require('child_process').exec;
const existsSync = require('fs').existsSync;
const sprintf = require('../string/format');
const defer = require('../promise/defer');
const opts = {
windowsHide : true,
};
const IS_WINDOWS = require('os').platform() == 'win32';
function rmrf(dir) {
if(!existsSync(dir))
return Promise.resolve(true);
var defered = defer();
/*istanbul ignore next*/
var cmd = sprintf(IS_WINDOWS ? 'rd /s /q "%s"' : 'rm -rf "%s"', dir);
exec(cmd, opts, defered.chain);
return defered;
}
module.exports = rmrf;