我使用makefile来存储我的进程。其中一个过程需要服务器。另外,我的script.make
就是这样:
end: server script
# runs the 2 other tasks, 1st `server` then `script`
script:
node ./node_script_with_server_queries.js
server :
node ./node_modules/.bin/forever ./node_modules/.bin/http-server
然后我运行makefile,启动服务器然后永远挂起:
$make -f ./script.make
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
Starting up http-server, serving ./ on: http://0.0.0.0:8080
Hit CTRL-C to stop the server
如果我在2个不同的终端手动执行任务,我可以使其正常工作。
如何以编程方式为每项任务运行2个不同的shell?
答案 0 :(得分:1)
您需要将服务器进程发送到后台,以便客户端脚本可以执行:
server : node ./node_modules/.bin/forever ./node_modules/.bin/http-server &