回答
您應該只有指定的目錄(SAN的包括屬性):
<copy todir="../new/dir">
<fileset dir="src_dir"/>
</copy>
見manual以獲取更多詳細信息和示例。
@ s1n該命令僅將src_dir的所有內容複製到../new/dir而不是src_dir。我們如何將src_dir(目錄)複製到另一個位置? – 2011-12-03 19:24:53
從示例here可以使用複製任務編寫一個簡單的Ant文件。
<project name="MyProject" default="copy" basedir=".">
<target name="copy">
<copy todir="./new/dir"> <fileset dir="src_dir"/> </copy>
</target>
</project>
內src_dir
(不含吧)new/dir
這應該複製一切。
這只是複製目錄的內容。不包括直接的內容。 。:( – ghostCoder 2011-11-21 07:55:08
複製包含目錄本身的內容。
<copy todir="${dest.dir}" >
<fileset dir="${src.dir.parent}">
<include name="${src.dir}/**"/>
</fileset>
</copy>
一個很好的觀點:如果源文件比目標文件更新,ant將只複製子目錄。 [1]在我的情況下,sub-dirs沒有被複制(我使用verbose =「true」),因爲沒有變化,它們已經在目的地。您可以使用「覆蓋」來強制它,或者觸摸源代碼子目錄中的一些文件。
複製包含目錄本身的內容。
<copy todir="${dest.dir}" >
<fileset dir="${src.dir.parent}" includes="${src.dir}/**"/>
</copy>
這是最簡潔的選項也http://ant.apache.org/manual/Types/fileset.html – Jess 2014-04-09 03:29:38
此代碼應複製文件夾以及其內容。它還使用基本名稱任務來避免必須執行任何手動路徑分析。
<project name="Build" default="doCopy">
<property name="source.dir" value="SourceDirPathGoesHere"/>
<property name="dest.dir" value="DestinationDirPathGoesHere"/>
<target name="doCopy">
<basename property="source.dir.base.name" file="${source.dir}"/>
<copy todir="${dest.dir}">
<fileset dir="${source.dir}/.." includes="${source.dir.base.name}/**"/>
</copy>
</target>
</project>
我用下面的代碼
<copy todir="${root.dir}/dist/src">
<fileset dir="${root.dir}/build/src" includes="**"/>
</copy>
這將從DIST建立複製src文件夾最終被複制。
希望這可以幫助別人。
我添加了一個更通用的模式來複制所有子文件夾。
<copy todir="${dest.dir}" >
<fileset dir="${src.dir}" includes="**/*"/>
</copy>
查看Patterns瞭解詳情。
我使用了include標籤,如下面的代碼片段所示,在我的build.xml文件中複製個別jar文件到目錄中。
<target name="devInstall" depends="generateXsl" description="testing">
<copy flatten="true" todir="${test}/WEB-INF/lib" overwrite="${overwrite}">
<fileset refid="buildJars"/>
<fileset dir="lib">
<include name="commons-collections-*.jar"/>
<include name="commons-io-*.jar"/>
<include name="kodo/*.jar"/>
<include name="mail*.jar"/>
<include name="activation*.jar"/>
<include name="guava*.jar"/>
<include name="jna*.jar"/>
</fileset>
</copy>
</target>
- 1. 如何使用Ant複製FTP任務的多個子目錄?
- 2. 如何使用ant腳本從url複製目錄?
- 3. Ant - 僅複製文件不是目錄
- 4. 如何使用Boost Filesystem複製目錄
- 5. 是否可以使用ant ftp任務複製空目錄
- 6. 在Eclipse中使用Ant將文件複製到Tomcat目錄
- 7. 使用ANT複製多個文件和目錄
- 8. 如何讓Ant將屬性文件複製到類目錄中
- 9. 使用copyItemAtPath複製目錄?
- 10. 使用NSIS複製目錄。
- 11. 如何複製目錄?
- 12. Ant目標:複製目錄和在各個文件它
- 13. 如何用Ant刪除目錄的dirset?
- 14. 如何用Ant編寫目錄結構?
- 15. 如何用xcopy複製目錄?
- 16. 如何使用Maven將資源複製到src目標目錄?
- 17. 如何將build目錄從build目錄複製到父目錄?
- 18. 如何抑制ANT複製郵件
- 19. ANT根目錄
- 20. 如果目標目錄已存在,如何複製目錄
- 21. 目錄複製?
- 22. 如何在Ant中複製目錄而不刪除目標目錄中的現有文件?
- 23. Ant:將文件從遠程Windows目錄複製到本地目錄
- 24. Ant-從樹上的一個子目錄複製文件和子目錄
- 25. 使用ANT將文件從本地目錄複製到映射驅動器
- 26. Groovy ANT任務將目錄複製到另一個位置
- 27. 將單個文件複製到Ant中的多個目錄
- 28. 使用ant(build.xml)編譯jni目錄
- 29. 使用ant將目錄添加到CVS
- 30. 如何使用ANT在刪除目錄之前檢查目錄是否存在?
聽起來像你想做一個遞歸的副本。這就是Omnipresent提供的解決方案。如果在問題中出現「遞歸」這個詞,更多的人可能會發現這個問題。 – Jason 2012-04-26 18:28:08