如何将参数传递给child_process.exec回调

时间:2013-04-12 12:36:17

标签: node.js child-process

有没有办法在我使用时将额外的参数传递给回调函数 child_process.exec(cmd,callback)

根据文档,回调函数只接收错误,stdout,sterr。

我最终可能会有一个unix脚本获取额外的args,运行命令,并将命令和args的结果输出到stdout但是也许有更好的方法来执行此操作

由于

2 个答案:

答案 0 :(得分:6)

您可以在exec回调

中调用另一个函数
var exec = require('child_process').exec
function(data, callback) {
  var cmd = 'ls'
  exec(cmd, function (err, stdout, stderr) {
    // call extraArgs with the "data" param and a callback as well
    extraArgs(err, stdout, stderr, data, callback) 
  })
}

function extraArgs(err, stdout, stderr, data, callback) {
  // do something interesting
}

答案 1 :(得分:1)

最后,我有一个函数my_exec:

var exec = require('child_process').exec
function my_exec(cmd,data,callback)
{
    exec(cmd,function(err,stdout,stderr){
        callback(err,stdout,stderr,data)
    })
}
谢谢你!