6

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

根据文档,回调函数只接收error、stdout、sterr。

我最终可以有一个 unix 脚本,它可以获取额外的参数,运行命令,并将命令和参数的结果输出到标准输出,但也许有更好的方法来做到这一点

谢谢

4

2 回答 2

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
}
于 2013-04-12T12:52:03.057 回答
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)
    })
}

谢谢你!

于 2013-04-12T14:24:47.423 回答