节点子进程执行命令失败,错误代码为 1
Posted
技术标签:
【中文标题】节点子进程执行命令失败,错误代码为 1【英文标题】:Node Child Process Exec Command Failed with error code 1 【发布时间】:2016-04-09 22:04:24 【问题描述】:我正在尝试使用节点 js 子进程执行某些行并出现错误。 以下是我的代码:
let cmd : string = "code " + PROJECTS[value];
exec(cmd, function callback(error, stdout, stderr)
console.log("started console app");
);
错误:
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
错误 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"
【问题讨论】:
尝试从你的程序中复制完整的命令并在终端中手动执行。 当我在终端中复制并运行命令时它可以工作,但是在运行 1,2 次后我给出了错误 【参考方案1】:我不想看到整个错误(太冗长)所以我做了这样的事情:
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://***.com/a/56095793/722796
【讨论】:
【参考方案2】:尝试一个更简单的例子..
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);
);
这行得通吗??
【讨论】:
问题是它在这个例子和我的例子之后工作了 1.2 倍,在同样的错误弹出窗口之后 验证您传递给 exec 命令或存储在数组中的字符串。就您的操作系统而言,它是否正确转义 是的,您可以在我显示的代码中检查完整的 CMD,并在我在命令提示符下编写时在 Windows 中正常工作。以上是关于节点子进程执行命令失败,错误代码为 1的主要内容,如果未能解决你的问题,请参考以下文章
无法执行“gcc”:权限被拒绝错误:命令“gcc”失败,cPanel 上的退出状态为 1
执行命令时代码构建失败并出现错误:npm install。原因:退出状态 127
InstallationError:命令“python setup.py egg_info”失败,错误代码为1 / tmp / pip-build-Jr1szu / Django /