What was the question? Your approach seems right, but your code looks a little mangled around the copy() call. Make sure the stuff inside the sub { ... } is what you want to happen for each file found and the arguments to find are correct (compare to examples in File::Find, with your sub { ... } in place of \&wanted).