在使用child_process.exec(cmd,callback)
时,是否有一种方式可以向回调函数传递额外的参数?
根据文档,回调函数仅接收错误、标准输出和标准错误。
我可以最终编写一个Unix脚本,获取额外的参数,运行命令,并将命令和参数的结果输出到标准输出,但也许有更好的方法来解决这个问题。
谢谢
在使用child_process.exec(cmd,callback)
时,是否有一种方式可以向回调函数传递额外的参数?
根据文档,回调函数仅接收错误、标准输出和标准错误。
我可以最终编写一个Unix脚本,获取额外的参数,运行命令,并将命令和参数的结果输出到标准输出,但也许有更好的方法来解决这个问题。
谢谢
您可以在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
}
var exec = require('child_process').exec
function my_exec(cmd,data,callback)
{
exec(cmd,function(err,stdout,stderr){
callback(err,stdout,stderr,data)
})
}
谢谢!