From: "Rebhan, Gilbert" Date: 2007-06-14T16:01:30+09:00 Subject: Dir copy with rename Hi, i want to copy a dir recursive with all files included, but rename all dirnames that match a pattern, i.e. /srcdir /bla/foobar/blabla /bla/test/subtest/foobar /foobar/test /foobar should be /targetdir /bla/foobaz/blabla /bla/test/subtest/foobaz /foobaz/test /foobaz i tried = re=/foobar/ sub="foobaz" Dir['Y:/test/**/**'].each { |old| next if old == '.'||old== '..'||old =~ /\./ unless /re/.match(old) new = old.sub(re,sub) File.rename(old,new) end } the /foobar folder on first level and on second level get renamed, but it dosn't work, when i have /foobar on the third level, means /foobar/foobar/foobar gets /foobaz/foobaz/foobar and Exit Code 1 /test/sub3/foobar/foobar gets /test/sub3/foobaz/foobar and Exit Code 1 Error message i.e. = No such file or directory - Y:/test/sub3/foobar/foobar or Y:/test/sub3/foobaz/foobar Any ideas what's wrong ? Regards, Gilbert