【问题标题】:node.js child process change a directory and run the processnode.js 子进程更改目录并运行该进程
【发布时间】:2014-11-06 14:48:50
【问题描述】:

我尝试使用如下子进程在 node.js 中运行外部应用程序

var cp = require("child_process");
cp.exec("cd "+path+" && ./run.sh",function(error,stdout,stderr){
})

但是当我尝试运行它时卡住了,没有输入回调

run.sh 启动服务器,当我使用 cp.exec 执行它时,我希望它异步运行,这样我的应用程序就不会等到服务器终止。在回调中,我想使用服务器。

请帮我解决这个问题。

【问题讨论】:

    标签: node.js bash process external


    【解决方案1】:

    引号由 shell 解释,如果你只看ps 输出,你看不到它们。

    【讨论】:

      【解决方案2】:

      cp.exec 在参数选项中获取工作目录 http://nodejs.org/docs/latest/api/child_process.html#child_process_child_process_exec_command_options_callback

      使用

      var cp = require("child_process");
      
      cp.exec("./run.sh", {cwd: path}, function(error,stdout,stderr){
      });
      

      用于运行“路径”目录中的脚本。

      【讨论】:

        猜你喜欢
        • 2014-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-12
        • 2015-08-19
        • 1970-01-01
        • 2014-09-30
        • 2017-05-31
        相关资源
        最近更新 更多