sorry forgot one line, the first post renames dirnames also, so one has to use =
<script language="ruby"> <![CDATA[ require 'fileutils' require 'find' srcdir=$srcdir destdir=$destdir Dir.mkdir(destdir) unless File.exists?(destdir) Dir.entries(srcdir).each do | i | if i !='.' && i !='..' FileUtils.cp_r Dir["#{srcdir}/**"], destdir end end Find.find(destdir) do |file| unless File.directory?(file) File.rename(file,file.downcase) end end ]]> </script> the line = unless File.directory?(file) prevents dirnames from renaming Regards, Gilbert -----Original Message----- From: Rebhan, Gilbert [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 02, 2007 2:12 PM To: Ant Users List Subject: RE: how can I copy a directory of files to lower case equivalents? Hi, -----Original Message----- From: Alx G [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 02, 2007 1:10 PM To: user@ant.apache.org Subject: how can I copy a directory of files to lower case equivalents? /* Hi, Does anyone know if there's anything in Ant that can copy files from a directory to another directory but change all the file names to lower case? */ here's a solution with <script> and ruby = ----------------snip---------------- <project name="bla" default="main" basedir="."> <!-- // Properties --> <property name="srcdir" value="Y:/test"/> <property name="destdir" value="Y:/test_"/> <!-- Properties // --> <target name="depends"> <script language="ruby"> <![CDATA[ require 'fileutils' require 'find' srcdir=$srcdir destdir=$destdir Dir.mkdir(destdir) unless File.exists?(destdir) Dir.entries(srcdir).each do | i | if i !='.' && i !='..' FileUtils.cp_r Dir["#{srcdir}/**"], destdir end end Find.find(destdir) do |file| File.rename(file,file.downcase) end ]]> </script> </target> <target name="main" depends="depends"> <echo> ### Copy / Rename ### src = ${srcdir} target = ${destdir} </echo> </target> </project> ----------------snip---------------- Regards, Gilbert --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]