atocha
v2.0.0
Published
Tiny exec() with Promises and trim()
Downloads
115,177
Maintainers
Readme
Atocha 
Run a command in your terminal. Tiny exec() with promises and trim() for Node.js:
import cmd from 'atocha';
(async () => {
// Any basic command will work
console.log(await cmd('ls'));
// Using a better Promise interface, see the lib `swear`
console.log(await cmd('ls').split('\n'));
// Can pipe commands as normal
console.log(await cmd('sort record.txt | uniq'));
})();
Terminal Atocha; Madrid's train station.
Better exec()
- Automatic
.trim()
so you don't have to do it manually. - Higher max buffer. 10 MB instead of 200 KB.
- Await/Async Promise interface works as you know and love.
- Better error handling.
stderr
will reject the promise with an error instance. Can be caught as normal with.catch()
ortry {} catch (error) {}
. - Advanced Promise interface so you can concatenate operations easily.
- Full commands, commands with piping, etc. Note: Do not pass unsanitized input since there's no filtering going on. See execa for that.
Getting started
Install it in your project:
npm install atocha
Import it to be able to use it in your code:
const cmd = require('atocha'); // Old school
import cmd from 'atocha'; // New wave
Examples
Parsing this package's information:
const out = await cmd(`npm info atocha --json`);
const info = JSON.parse(out);
console.log(info.name + '@' + info.version);
// atocha@1.1.1