我在 rsync.js
中有一个功能rsync.js
var onClick = function(){
exec('rsync -avz -e "ssh -o StrictHostKeyChecking=no -o\ UserKnownHostsFile = /dev/null" --progress' + src_dir + to_dir,\
function(error,stdout,stderr){
console.log('stdout:',stdout)} )
}
假设我想为系统中存在的3个不同目录运行上面的代码。所以,我只需要更改src_dir
和to_dir
来为函数{{}提供输入。 1}}。
为了做到这一点,我想以JSON格式制作一个输入配置文件,这样我就可以在 rsync.js 中要求它,并且只提供输入作为onClick
和src_dir
的函数,它适用于其中的3个。
问题1 :如何在 config.js 文件中迭代数组列表?
问题2 :如何为函数to_dir
提供输入?
例如:onClick
Try1: 我已经为源和目标创建了一个数组列表。 现在我想迭代它,但无法做到。
config.js
var onClick = function(src_dir= "", to_dir= ""){}
答案 0 :(得分:1)
var onClick = function(src_dir, to_dir){ // expect 2 paramteres for the onClick function (src,to)
exec('rsync -avz -e "ssh -o StrictHostKeyChecking=no -o\ UserKnownHostsFile = /dev/null" --progress' + src_dir + to_dir, function(error,stdout,stderr){
console.log('stdout:',stdout)
})
}
// Load config
var config = require('config.js');
// Iterate through all elements in config.src
for(var i=0;i<config.src.length;i++){
onClick(config.src[i].src_dir,config.src[i].to_dir)
}