将文件复制到所有子文件夹中


Copy file into all subfolders

我有一个php.ini文件,它应该激活PHP压缩(不能在我的服务器上设置全局设置)。不幸的是,该文件中的设置仅适用于完全相同文件夹中的文件。为了将这些设置应用于该项目中的所有文件,我需要将php.ini文件复制到所有子目录中。

现在,在我用Ant构建了我的项目之后,我正在寻找Ant支持的解决方案。。。

有没有办法做到glob(IS_DIR)风格?

感谢您为我指明了正确的方向!

我现在使用的目标是这样的:

<target name="enable.compression">
    <apply executable="cp">
        <arg value="php.ini" />
        <dirset dir="">
            <include name="*/**" />
        </dirset>
    </apply>
</target>

它做了它应该做的事情…

仅使用<dirset dir="">导致文件试图覆盖自己,因为该方法中包含的根目录

最简单的解决方案是使用ant contrib及其for任务。

下面是一段构建文件,它应该进行预期的复制:

<ac:for param="dir">
  <dirset dir="destdir" />
  <sequential>
    <copy file="php.ini" todir="@{dir}" />
  </sequential>
</ac:for>

纯ANT解决方案可以利用ANT:中的应用任务

  <apply executable="cp">
     <arg value="/path/to/php.ini"/>
     <dirset dir="/target/dir/containing/sub/dirs"/>
  </apply>