node.js使用spawn perl – stdout逐行
在nodeJS中产生。 我刚刚设法使用这个来运行一个bash命令如下。 这似乎是非blocing和我在浏览器屏幕上的行动,因为该命令通过数据。
ls = spawn('find',['/'] ); response.writeHead(200, { "Content-Type": "text/plain" }); ls.stdout.on('data', function (data) { console.log('stdout: ' + data); response.write(data); });
但是我想用多个参数运行perl脚本。
ls = spawn('blah.pl',['--argstring here', '--arg blah'] );
Perl脚本只是为了使用getopts CPAN lib来获取参数,它使用CPAN,希望lib能够运行一堆东西 – 如果我有一个错误,输出到stdout和stderr,但我现在主要关心stdout。
事情是这不给我输出。 似乎是完全阻止,直到程序完成执行…而这种情况下,至less10分钟。
我使用产卵错误?
我喜欢节点模块“载体”
carrier = require "carrier" childproc = require "child_process" find = childproc.spawn "find" find.stdout.setEncoding "utf8" linereader = carrier.carry find.stdout linereader.on "line", (line) -> console.log line