我想使用节点js启动4个脚本。
myapp
-script1.js
-script2.js
-script3.js
-app.js
-package.json
....
....
我尝试使用下面的
运行它node script1.js && node script2.js && node script3.js && node app.js
node script1.js & node script2.js & node script3.js & node app.js
但它未启动所有脚本,仅启动script1.js
。
如何做到?
答案 0 :(得分:0)
尝试一下。它将执行所有脚本,而与先前脚本的退出代码无关
node script1.js; node script2.js; node script3.js; node app.js
答案 1 :(得分:0)
$ node script-1.js && node script-2.js && node script-3.js && node app.js
I am script-1
I am script-2
I am script-3
I am app.js
正在工作。
也许您的 script1.js 阻止了队列中的其他脚本。
节点以同步方式运行它。
如果要并行运行这些脚本。
您可以使用名为concurrently的npm软件包
在命令行中。
$ concurrently "node script-1.js" "node script-2.js" "node script-3.js" "node app.js"
[3] I am app.js
[2] I am script-3
[0] I am script-1
[1] I am script-2
[2] node script-3.js exited with code 0
[3] node app.js exited with code 0
[0] node script-1.js exited with code 0
[1] node script-2.js exited with code 0
Done in 1.07s.
或者您可以将其放在 package.json脚本中。
"scripts": {
"start": "concurrently \"node script-1.js\" \"node script-2.js\" \"node script-3.js\" \"node app.js\""
}
它将同时/以异步方式运行多个命令。
希望有帮助。 :)