使用lftp镜像

时间:2017-06-03 05:26:24

标签: bash ftp mirror lftp

我有一个ftp服务器,我只想下载符合特定模式的文件。这些文件位于嵌套目录树中。这就是我所做的:

lftp -c 'open -e "mirror --parallel=8 -i .*abc\.zip . localmirrordir" http://site.ftp.com/'

此命令仅在localmirrordir下载与正则表达式匹配的文件。但问题是该命令行每次运行时都会对服务器上的所有目录进行全面扫描。

我希望减少那段时间,我希望只检查服务器上与正则表达式匹配的那些路径。我怎么能这样做?

另外你能告诉我为什么这个命令根本无法从服务器上取任何东西:

lftp -c 'open -e "mirror --parallel=8 -x .* -x .*/ -i .*abc\.zip . localmirrordir" http://site.ftp.com/'

1 个答案:

答案 0 :(得分:0)

您可以明确排除您不想扫描的目录。当包含第一个模式时,lftp首先排除所有文件,但包括所有目录。上次匹配模式提供有关每个文件或目录的分辨率。目录与附加的斜杠匹配。