Created
February 25, 2019 02:05
-
-
Save sheldonth/1ab183f49a28144a5a6704f1bcff500c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Never rewrite this stupid block again | |
// const result = await promise_cmd("hostname") | |
// result = [int code, Buffer stdout, Buffer stderr] | |
const {spawn} = require('child_process') | |
const promise_cmd = (cmd) => { | |
const job = spawn(cmd) | |
let stdout = Buffer.from([]) | |
let stderr = Buffer.from([]) | |
return new Promise((resolve, reject) => { | |
job.stdout.on('data', (data) => { | |
stdout = Buffer.concat([stdout, data]) | |
}) | |
job.stderr.on('data', (data) => { | |
stderr = Buffer.concat([stderr, data]) | |
}) | |
job.on('close', (code) => { | |
resolve([code, stdout, stderr]) | |
}) | |
}) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment