node.js子进程更改目录并运行该进程

com*_*com 10 bash external process node.js

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

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

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

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

请帮我解决这个问题.

Bor*_*rov 17

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){
});
Run Code Online (Sandbox Code Playgroud)

用于在"path"目录中运行脚本.