【发布时间】:2017-04-18 13:34:50
【问题描述】:
我目前有一个从 FTP 站点下载文件的 bash 脚本。我想修改脚本以保留它下载的每个文件的清单,并且只下载不在清单中的任何新文件。有没有办法在 bash 中做到这一点,还是我在推动 bash 实际可以做的事情的限制?
【问题讨论】:
-
这取决于您要查找的速度和相关文件的数量。我写了类似的东西,每分钟检查几千个文件。它会根据列出的尺寸保存列表并检查收到的尺寸。效果很好,使用 lftp。但是你可以在简单的情况下使用 rsync。
-
不幸的是,rsync 在这里不能作为一个选项,因为本地文件将被移动到存档,但远程文件偶尔会移动。我每天只看 2-3 次,文件数量可能在 1-10 左右(10 很多)。如果你能提供帮助,我愿意接受 lftp。谢谢!
-
呃。代码长约 500 行,其中包含 /private/ 数据,但基本上它使用 lftp 执行“ls”命令,记录其输出和与之前给出的比较(通过排序和两个“while”交错 bash 循环)调用,构建下一个 lftp 'get' 脚本文件。