我需要这个
- 观看目录内容
- 目录内容更改时
- 删除特定的ftp文件夹
- 将所有目录内容上载到同一ftp文件夹
我完全不知道完成这项任务的最佳方法。
我正在寻求建议/想法。。。。吞咽咕哝节点?否:)?
事实上,我不知道构建工具。所以,在尝试/否定每一个选项之前,我会征求你的建议。
编辑:请注意,我要求一个能够监视文件更改并上传到FTP的Continuos部署工具。
我无法选择更改FTP。。。我只会换的工作
您需要的是一个连续部署解决方案。FTP不一定是需要做的。你还没有提到技术堆栈,但如果你(例如)在Visual Studio中工作,你可以通过Azure集成轻松地设置到应用程序服务的连续部署。这样,每当你在VS中打开项目时,如果你更改代码并保存它们,它们就会上传到你的应用程序中。
你可以在这里阅读有关Azure上的应用程序服务CD
当然,您可以使用许多不同的连续部署解决方案。这是一个我比较熟悉的具体例子。以下是其他解决方案的列表,每个解决方案都有自己的功能集。如果你做你的研究,我相信你会找到你需要的(而不是写一个脚本为你做目录监控和FTP)
您所描述的用户案例是唯一的,因此您不会找到一个已经构建好的解决方案,在那里您可以简单地运行它并完成它。你将需要创建自己的。
监视目录
这可以转化为"您的代码需要注意文件上传"。这可以通过将"通知"推送到您的代码上,或者您的代码自行拉取"通知"来实现。
遗憾的是,来自FTP服务器的推送将不起作用,因为(据我所知)没有FTP服务器支持文件上传时的推送通知。要理解我在这里的意思,请考虑SVN提交后挂钩。
使pull最简单的方法是跟踪FTP日志并查找STOR命令,匹配您的监视目录(通过regexp),并在匹配时执行bash/PHP或任何其他脚本以使步骤(2)步骤(2)是一些ftp客户端命令。
对于PHP:
- 删除目录:http://ee1.php.net/manual/en/function.ftp-rmdir.php
- 上传一个文件(在评论中有递归的例子来上传目录和它的内容):http://ee.php.net/manual/en/function.ftp-put.php