nodejs FTP下载目录的方法
发布于 9个月前 作者 dulante 779 次浏览

node FTp 插件有没有能从FTP下载目录的 找了好几个都是下载文件的 有没有什么可以直接实现下载目录的ftp插件 如果没有的话 我用的node-ftp 要下载文件夹的话 一种是获取所有文件的地址下载 这是我这个菜鸟写的 求指点可行不 遇到的问题是 同步异步那块 只能写入最后一个读到的文件,这要怎末解决 var dir =’./floder’; function getall(dir){ ftpClient.list(dir,function(err, list) { if (err) throw err; for(var t = 0;t<(list.length-1);t++){ if(list[t].type==’-'){ console.log(t); ftpClient.get('dir’+list[t].name, function (err, stream) { var filename = list[t].name; if (err) throw err; stream.once('close’, function () { ftpClient.end(); }); steam.pipe(fs.createWriteStream(‘dir’+filename)); }); }else if(list[t].type ==’d’){ fs.mkdirSync('dir/’+list[t].name); getall(dir+’/’+list[t].name); } } }); } getall(dir);

第二种方案 是看到有大神说用child_process掉unix 命令 要是本身开发环境和ftp都是win环境 还可用不 可用的话能稍微详细点吗 require(‘child_process’).exec('wget -r -np --spider -R robots.txt ftp://user:pswd@ftpsite.com/folder/’, function(err, stdout, stderr){});

5 回复

https://www.npmjs.org/package/ftp

这个冒似可以满足你的要求。文件夹列出 + 文件下载。

我现在用的就是这个,还是对文件的下载,有没有对文件夹下载的

文件夹列出的话 也只是对当前目录下的文件列出 如果二级目录还是文件夹 这时候也列不出来里面的文件 这要怎么下载整个文件夹

顶一顶 求解决方案啊

回到顶部