forever.list在node.js代码中返回null

forever.list在node.js代码中返回null,node.js,forever,Node.js,Forever,无法在node.jscode中使用方法 var forever; forever = require('forever'); forever.startServer(); forever.list("", function(result) { return console.log(result); }); 。。。在控制台中打印null 虽然在terminal when runforever list中,我看到了运行过程 ❯ forever list info: Forever

无法在
node.js
code中使用方法

var forever;

forever = require('forever');

forever.startServer();

forever.list("", function(result) {
  return console.log(result);
});
。。。在控制台中打印
null

虽然在terminal when run
forever list
中,我看到了运行过程

❯ forever list
info:    Forever processes running
data:        uid  command             script forever pid   logfile                       uptime       
data:    [0] 1QNd /usr/local/bin/node app.js 29937   29979 /Users/user/.forever/1QNd.log 0:0:26:23.55
我希望在node.js脚本中获得相同的日期


可能我对无效参数使用了
list
。第一个参数
format
-我传递空字符串,因为我不知道传递什么。

永远。list
是一个cli命令,因此不能直接在代码中使用。如果您正在以编程方式使用forever,则应安装

因此,您可以调用cli命令,例如:

var exec = require('child_process').exec;

function execute(command, callback) {
    exec(command, function(err, stdout, stderr) {
    callback(stdout);
  })
};

execute('forever list', function(ret) {
  console.log(ret);
});
输出:

这个答案永远是0.15.2

请参见
cli.js

期待你的代码

var forever = require('forever');

// If set 'true' to @format, return 'processes' is formatted strings.
forever.list(true, function (err, processes) {
  console.log(err);
  console.log(processes);
});

// If set 'false' to @format, return 'processes' is object.
forever.list(false, function (err, processes) {
  console.log(err);
  console.dir(processes);
});
//
// ### function list ()
// Lists all currently running forever processes.
//
app.cmd('list', cli.list = function () {
  forever.list(true, function (err, processes) {
    if (processes) {
      forever.log.info('Forever processes running');
      processes.split('\n').forEach(function (line) {
        forever.log.data(line);
      });
    }
    else {
      forever.log.info('No forever processes running');
    }
  });
});
var forever = require('forever');

// If set 'true' to @format, return 'processes' is formatted strings.
forever.list(true, function (err, processes) {
  console.log(err);
  console.log(processes);
});

// If set 'false' to @format, return 'processes' is object.
forever.list(false, function (err, processes) {
  console.log(err);
  console.dir(processes);
});