在node.js中使用参数生成进程

Ind*_*ial 16 process spawn node.js

我需要从中生成一个子进程node.js,同时使用ulimit它来使用它来保存很多内存.

按照文档,让基本的spawn工作并不难:child = spawn("coffee", ["app.coffee"]).

然而,做我在下面做的只是让产生的声音无声无息.

child = spawn("ulimit", ["-m 65536;", "coffee app.coffee"])
Run Code Online (Sandbox Code Playgroud)

如果我会跑ulimit -m 65536; coffee app.coffee- 它的作用是有意的.

我在这做错了什么?

vin*_*ayr 20

这是两个不同的命令.如果您正在使用,请不要打它们spawn.使用单独的子进程.

 child1 = spawn('ulimit', ['-m', '65536']);
 child2 = spawn('coffee', ['app.coffee']);
Run Code Online (Sandbox Code Playgroud)

如果您对输出流不感兴趣(如果您只想缓冲输出),则可以使用exec.

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

child = exec('ulimit -m 65536; coffee app.coffee',
  function (error, stdout, stderr) {
    console.log('stdout: ' + stdout);
  }
});
Run Code Online (Sandbox Code Playgroud)

  • @VasanthSriram肯定`cp.spawn(lighttpdPath,[' - f','lighttpd.conf',' - m','lib']);` (2认同)