我在寻找一个适用于Node.js的模块,最好可以通过npm获取,用于与FTP服务器同步文件。虽然ftp模块具有所有基本功能,但在其基础上编写完整的同步系统似乎需要很多工作。
我在寻找一个适用于Node.js的模块,最好可以通过npm获取,用于与FTP服务器同步文件。虽然ftp模块具有所有基本功能,但在其基础上编写完整的同步系统似乎需要很多工作。
它利用Sergi的jsftp库智能同步文件到远程服务器。
注意:当前,除了基于时间戳的更新比较外,推送支持所需的所有内容均已实现。目前,更新是仅通过比较文件大小来确定的。
node-ftpsync 提供CLI支持和编程API。首选解决方案是全局安装并在包含config.json的目录中运行它。或者,它也可以作为一个lib轻松配置、扩展和在代码中启动。
grunt-ftpsync 的工作方式与之相同,只是配置和运行应用程序是通过grunt完成的。它甚至可以输出花哨的彩色日志。
免责声明:我是node-ftpsync和grunt-ftpsync的作者
我在npm、github和互联网上进行了一些调研,并没有找到任何看起来不错的同步方案。
我会首先写一个(简单)的同步库,使用一些好的ftp库。就个人而言,我认为jsftp最具吸引力(http://sergi.github.com/jsftp/)。只需将jsftp与一些文件系统遍历结合使用--特别是如果你只需要简单的单向同步,这应该是不难做到的。
实现单向同步(从本地文件系统到ftp)的一些想法:
fs.readdir
遍历本地文件系统jsftp
,使用和)另外,问问自己是否真的需要使用node.js执行同步?例如,如果您可以在系统中运行Python脚本,则可以简单地使用一个具有FTP支持的双向同步工具ftpsync2d
(http://code.google.com/p/ftpsync2d/)。