0

我正在尝试使用 node.js 为 adb logcat 命令编写一个接口,并且需要一些帮助让我的函数执行连续和异步回调。此命令生成我想在生成时发送到回调函数的恒定输出(不是在我让它运行一段时间然后停止它之后)。node.js 可以做到这一点,如果可以,我该怎么做?

到目前为止,这是我的代码

exports.logcat = function(options, callback){
    var logcatCmd = "adb logcat" + options;
    console.log("sending command: " + logcatCmd);
    exec(logcatCmd, function(error, stdout, stderr){
        if(error !== null){
            console.log("encountered error = " + error);
        }
        callback(stdout);
    });
};
4

1 回答 1

1

简而言之,不;您不能watch对新输出使用 shell 命令,就像您可以从更改的文件或套接字中流式传输数据一样。

如果它生成恒定的输出,则更有可能它只是从某个日志文件中读取并将其打印在屏幕上。您应该弄清楚它从哪个文件获取数据,并使用fs.watchwithreadableStream来不断获取数据流。

于 2013-05-31T04:58:56.947 回答