一个接一个地运行NodeJS命令

时间:2015-03-09 16:37:29

标签: node.js

我使用NodeJS做两件事:

  1. 启动服务器并侦听端口
  2. 运行grunt任务
  3. 电话如下:

    node livereload.js
    grunt watch
    

    但问题是第一次通话不允许后续任务运行!所以我必须在cmd中执行CTRL + C来运行另一个命令。

    即使这样做:

    node livereload.js & grunt watch
    

    不起作用!我是否必须在livereload.js文件中执行某些操作才能退出命令,以便我可以调用另一个命令?

    该文件如下:

    var lrserver = require('tiny-lr')();
    lrserver.listen(35729, function(err) { console.log('LR Server Started'); });
    

    我甚至尝试过:

    node livereload
    .exit
    grunt watch
    

    但这也不起作用。

    更新:看起来grunt watch命令实际上是用我的第一个代码示例运行的,但因为它没有退出,所以它不会显示来自grunt的控制台日志,因为它'仍然在livereload上。有什么想法解决这个问题的最佳方法是什么?

    从NodeJS开始执行CTRL + C的正确方法是什么?看来我需要在console.log

    之后执行此操作

2 个答案:

答案 0 :(得分:1)

我认为这就是你所追求的目标:

node livereload.js && grunt watch

答案 1 :(得分:1)

在Windows中,尝试:

start /B node livereload.js

这大致相当于Linux的

node livereload.js &