【发布时间】:2020-04-14 01:14:30
【问题描述】:
我编写了一个节点脚本,将 cd 依次放入多个目录并执行 bash 命令,以便将 repos 的内容部署到我的开发环境中。
本机 bash 命令可以正常工作,例如 cd、ls,但它看起来像由节点打开的子 shell 或子进程(或任何适当的术语,我不了解 Bash 的内部工作原理)没有任何可用于我的正常提示的内容。
例如
- 全球可用的自定义 bash 工具集
-
nvm(这是否可能,在节点子外壳中运行不同版本的节点?) - gulp 中断,因为它没有安装必要的节点版本。
是否可以从节点子外壳访问这些程序/命令?我正在使用child_process 节点模块。
const { exec } = require('child_process');
function command (command) {
exec (command, (err, stdout, stderr) => {
if (err) {
error(err);
} else {
message(`stdout: ${stdout}`);
message(`stderr: ${stderr}`);
}
});
}
用于:
command('nvm use 6');
command('gulp build');
command('pde deploy');
【问题讨论】:
标签: node.js bash child-process