node.js - El comando Exec del proceso hijo de Node falló con el código de error 1
Estoy intentando ejecutar algunas líneas usando el proceso hijo de Node.js y estoy recibiendo un error. El siguiente es mi código:
let cmd : string = "code " + PROJECTS[value];
exec(cmd, function callback(error, stdout, stderr) {
console.log("started console app");
});
ERROR :
cmd:"C:\WINDOWS\system32\cmd.exe /s /c "code c:\Users\shana\Dropbox\code-settings-syn... (length: 82)"
code:1
killed:false
message:"Command failed: C:\WINDOWS\system32\cmd.exe /s /c "code c:\Users\shana\Dropbox\c... (length: 99)"
signal:null
stack:undefined
Detalle del error JSON.
Full CMD : "C:\WINDOWS\system32\cmd.exe /s /c "code c:\Users\shana\Dropbox\code-settings-sync""
Full message : "Command failed: C:\WINDOWS\system32\cmd.exe /s /c "code c:\Users\shana\Dropbox\code-settings-sync"\n"
Respuesta #1
prueba un ejemplo más sencillo ..
var exec = require('child_process').exec;
var cmd = 'code C:\Program Files';
exec(cmd, function(err, stdout, stderr) {
if (err) {
console.error(err);
return;
}
console.log(stdout);
});
¿esto funciona??
Respuesta #2
No quería ver todo el error (demasiado detallado) así que hice algo así:
try {
const { stdout, stderr } = await exec('echo TEST');
console.log('stdout:', stdout);
console.log('stderr:', stderr);
} catch (e) {
// If exec fails and you want to see the whole ugly error:
// console.error(e);
console.log('How about a nice human readable message instead?');
}
Debido al "await" esto va dentro de una función "async". Más información: https://stackoverflow.com/a/56095793/722796
