我试图使用node-js子进程执行某行,但出现错误。以下是我的代码:
let cmd : string = "code " + PROJECTS[value];
exec(cmd, function callback(error, stdout, stderr) {
console.log("started console app");
});
错误:
cmd:"C:WINDOWSsystem32cmd.exe /s /c "code c:UsersshanaDropboxcode-settings-syn... (length: 82)"
code:1
killed:false
message:"Command failed: C:WINDOWSsystem32cmd.exe /s /c "code c:UsersshanaDropboxc... (length: 99)"
signal:null
stack:undefined
错误JSON的详细信息。
Full CMD : "C:WINDOWSsystem32cmd.exe /s /c "code c:UsersshanaDropboxcode-settings-sync""
Full message : "Command failed: C:WINDOWSsystem32cmd.exe /s /c "code c:UsersshanaDropboxcode-settings-sync"n"
尝试一个更简单的示例。。
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);
});
这行得通吗??
我不想看到整个错误(太详细),所以我做了这样的事情:
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?');
}
由于";等待";这进入一个";异步;作用更多信息:https://stackoverflow.com/a/56095793/722796