使用sh脚本运行两次node.js
我用这个内容创build了一个名为runall.sh
的bash脚本:
#!/bin/bash node ../app1/app.js && node ../app/app.js
我chmod +x ./runall.sh
并可以运行它。
但只有../app1/app.js
开始。 如果我手动运行node ../app2/app.js
它工作。
你可能想用&背景?
#!/bin/bash node ../app1/app.js &; node ../app/app.js &
shell脚本中的&&
运算符试图进行短路AND
比较。 这意味着它检查在第二个命令开始之前第一个命令的结果是什么。 所以它会等到第一次调用node
终止,然后再调用第二个node
。
正如@daniel之前所说的,'&&'操作符后面的命令只有在执行完第一个命令后才会被调用。
所以你可以用'&'运算符发送一个命令到后台,或者你可以像永远一样使用某种node.js进程pipe理器。
这样你的runall.sh可能看起来像
#! /bin/bash forever start ../app1/app.js forever start ../app2/app.js
- 如何创build一个可以在全局安装的nodejs-command-line-tool?
- 用sh / bash发送IPC消息给父进程(Node.js)
- AWS CodeDeploy AfterInstall脚本正在从代码部署代理目录运行
- 离子,npm和cordova命令都需要sudo才能工作
- npm命令通过ssh(Cygwin)发生错误
- 使用npm / nodejs命令行实用程序坚持用户首选项的最佳方法
- apm(atom的包pipe理器)启动shell运行错误
- 我如何编写一个shell脚本使用节点一个接一个地运行多个JavaScript文件?
- 为什么我不能将npm install安装到sed,同时保留颜色和进度更新?