UNPKG

pur

Version:

Alias and glob powered multi-threaded shell execution

35 lines (32 loc) 1.18 kB
'use strict'; exports.dealias = dealias; var _run = require('./run'); function dealias(alias) { if (/^win/.test(process.platform)) { return Promise.resolve(alias); } else { return new Promise(function (resolve) { var command = undefined; if (process.platform === 'linux') { command = "bash -i -c 'alias -p'"; } else { command = "bash -l -c 'alias -p'"; } (0, _run.run)(command).then(function (aliasString) { var aliases = aliasString.split('\n').map(function (alias) { return alias.trim(); }); for (var i = 0; i < aliases.length; i++) { if (aliases[i].length > 0 && aliases[i].indexOf('alias ') === 0) { var aliasSet = aliases[i].slice(6).split('='); if (aliasSet[0] === alias) { resolve(aliasSet[1].slice(1, -1).split(' ')); return; } } } resolve([alias]); }); }); } }