2011-02-16 79 views
2

如何通過'get'任務遞歸下載文件?Ant'get'任務遞歸

我要找的Ant等價物:

wget -r -nH --cut-dirs=5 --level=0 ftp://ftp.some.host/dir1/dir2...../dir6 

我有這個片段中的build.xml:

<get src="${ftpPath}" dest="tempfolder" verbose="true" /> 

結果:

 [get] Getting: <FTP_URL_HERE> 
     [get] To: <dir>/tempfolder 
     [get] .... 
    BUILD SUCCESSFUL 
    Total time: 0 seconds 

沒有獲取下載。我假設「獲取」任務僅適用於文件。不幸的是,在<url>標籤中列出每個文件(這可能會在1000年)並不是一個選項。

我有點猶豫,通過'exec'任務運行wget命令,因爲Windows本身並不具有wget,並且我想以最小的努力保持平臺獨立性。

回答

2

我不相信您可以嵌套文件集或以其他方式指定@src<url>資源的包含模式。

但是,如果你的${ftpPath}是FTP路徑,然後您可以使用<ftp> task,它不支持文件集和模式

<ftp action="get" 
     server="ftp.some.host" 
     userid="anonymous" 
     password="[email protected]"> 
    <fileset> 
     <include name="**/dir*/**"/> 
    </fileset> 
    </ftp> 
+0

我沒有使用這種方法(JAR依賴)去。我決定通過exec(bash)運行'wget'。稍後我會處理Windows。 – Aditya 2011-02-18 02:28:54