我遇到了与 FTP 相关的特殊情况,但很难找到解决方案。
我需要一个可以在以下参数内运行的 FTP 下载/同步应用程序:
- 它必须在 Windows 下运行(安装 Python 以便能够运行脚本或类似的东西是可接受的解决方案)。
- 它必须能够忽略某个日期之前的文件(我想开始下载新文件,而不是全部这个非常大的 FTP 目录中存在的文件)。
- 我不想进行双向同步(例如,我不希望对本地文件和目录结构所做的更改改变远程 FTP 服务器,FTP 服务器需要完全保持不变)。
- 以某种方式实现自动化是理想的。
你们有什么建议?我想到的解决方案都在某种程度上偏离了目标(例如,它们具有双向同步,或者它们无法立即启动同步,而是尝试拉下整个目录)。
答案1
对于您来说这个答案可能来得太晚了,但我会为在搜索类似内容时偶然发现这个问题的任何人解答。
LFTP 的镜像功能包含 --newer-than= 功能。
对于上周更新的文件:
--newer-than=now-7days
对于指定日期之前的文件:
--newer-than=2015-02-03
以下是一个例子:
lftp -p <port> -u <login>,<password> sftp://<host>
set mirror:use-pget-n 5
mirror -L -c -P5 --newer-than=now-7days <remote_dir> <local_dir>