2017-06-03 152 views
0

我有一個ftp服務器,我只想下載與特定模式匹配的文件。這些文件位於嵌套的目錄樹中。這是我做過什麼:使用lftp鏡像包含和排除文件

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/' 

回答

0

可以明確排除不希望掃描目錄。當第一個模式包含時,則lftp首先排除所有文件,但包含所有目錄。上次匹配模式提供有關每個文件或目錄的解決方案。目錄與附加的斜線匹配。

+0

你能舉一些代碼示例來更好地解釋你的觀點嗎?這會讓你的回答對所有人都有幫助。 – abc