用node.js中的参数产生进程

我需要从node.js产生一个subprocess,同时使用ulimit来避免使用内存。

在文档之后,获得基本的产卵工作并不困难: child = spawn("coffee", ["app.coffee"])

但是,我正在做的事情只是使得产卵静静地死去。

 child = spawn("ulimit", ["-m 65536;", "coffee app.coffee"]) 

如果我会运行ulimit -m 65536; coffee app.coffee ulimit -m 65536; coffee app.coffee – 它的工作原理。

我在这里做错了什么?

这是两个不同的命令。 如果你正在使用spawn不要把他们俱乐部。 使用单独的subprocess。

  child1 = spawn('ulimit', ['-m', '65536']); child2 = spawn('coffee', ['app.coffee']); 

如果你对输出stream不感兴趣(如果你只想缓冲输出),你可以使用exec

 var exec = require('child_process').exec, child; child = exec('ulimit -m 65536; coffee app.coffee', function (error, stdout, stderr) { console.log('stdout: ' + stdout); } });