如何在Node.js上使用exec时使用/.bashrc中编写的源文件

时间:2019-06-18 08:13:19

标签: javascript node.js

我将goorm IDE用于Web开发。在根目录中,我添加了.bash文件的源,以在终端上运行这些命令。单独地,如果我运行这些命令,它们似乎可以正常工作。但是,当我使用exec函数使用.sh文件运行这些命令时,似乎此处未使用源文件。环境变量很多,每个变量都无法导出。有人可以在这里帮助我,展示如何在使用exec函数时使用源文件吗?另外,向我展示一个示例,以在node.js上同步运行脚本文件

const cp = require("child_process");

class MyShell {
  constructor(command) {
    this._spawned = cp.spawn(command, {
      stdio: ["pipe", "pipe", "inherit"],
    });
  }
  execute(command, callback) {
    this._spawned.stdin.write(command + "\n");
    this._spawned.stdout.on("data", (chunk) => {
      if (callback) {
        callback(chunk.toString());
      }
    });
  }
}

var myShell = new MyShell("bash");
myShell.execute("source FlameMaster/Bin/bin/Source.bash", (result) => {
  console.log(result);
});
myShell.execute("fmagain", (result) => {
  console.log(result);
});
myShell.execute("exit");

这是我的代码,它显示一个错误,提示未找到fmagain命令,但实际上它实际上存在于源文件中。

0 个答案:

没有答案