我的目标是将由模式指定的一组文件复制到目标目录。源目录中的文件可以有子目录。复制使用rake保存目录结构的文件
我想:
cp_r(Dir.glob('**/*.html'), @target_dir):
和
cp_r(FileList['**/*.html'], @target_dir):
但既不工作。
cp_r(Dir['.'], @target_dir):
但我需要复制唯一的* .html文件不是别的:
当我做类似的东西才有效。
我需要什么
cp --parents
命令不
使用现有的Ruby /耙的方法有什么建议?
UPDATE看起来像Ant更容易做到的事情,用Ruby/Rake堆栈是不可能的 - 可能我需要看看别的东西。我不想编写自定义代码来使它在Ruby中工作。我只是想过Ruby/Rake作为适当的解决方案。
更新2这是我如何使用Ant
<target name="buildeweb" description="Builds web site" depends="clean">
<mkdir dir="${build.dir.web}" />
<copy todir="${build.dir.web}" verbose="true">
<fileset dir="${source.dir.web}">
<include name="**/*.html" />
<include name="**/*.htm" />
</fileset>
</copy>
<chmod perm="a+x">
<fileset dir="${build.dir.web}">
<include name="**/*.html" />
<include name="**/*.htm" />
</fileset>
</chmod>
</target>
你可以复制的一切,然后删除未.HTML的人。这将会更容易,因为你不需要摆弄路径。 – d11wtq
@ d11wtq,这不是一个好的解决方案,因为在这种情况下,您需要做两件额外的事情:复制不需要的文件,然后删除不需要的文件。 – Vladimir