Mein Ziel ist es, eine Reihe von Dateien, die durch ein Muster angegeben sind, in das Zielverzeichnis zu kopieren. Die Dateien im Quellverzeichnis können Unterverzeichnisse enthalten.Kopieren von Dateien unter Beibehaltung der Verzeichnisstruktur mit Rake
Ich habe versucht:
cp_r(Dir.glob('**/*.html'), @target_dir):
und
cp_r(FileList['**/*.html'], @target_dir):
aber weder Arbeit.
es funktioniert nur, wenn ich so etwas wie:
cp_r(Dir['.'], @target_dir):
Aber ich brauche nur * .html-Dateien nichts anderes zu kopieren.
Ich brauche was
cp --parents
Befehl tut
Jede Beratung vorhandene Rubin/Rake Methoden verwenden?
UPDATE Sieht aus wie etwas, was mit Ant einfacher ist, ist nicht möglich mit Ruby/Rake-Stack - vielleicht müsste ich etwas anderes suchen. Ich möchte keinen benutzerdefinierten Code schreiben, damit er in Ruby funktioniert. Ich dachte gerade über Ruby/Rake als geeignete Lösung dafür nach.
UPDATE 2 Dies ist, wie ich es tun mit 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>
Sie alles kopieren könnte, dann diejenigen löschen, die nicht .html sind. Das wäre einfacher, da Sie nicht mit Pfaden herumspielen müssen. – d11wtq
@ d11wtq, das ist keine gute Lösung, weil Sie in diesem Fall zwei zusätzliche Dinge tun müssen: Kopieren Sie nicht benötigte Dateien, und löschen Sie dann nicht benötigte Dateien. – Vladimir