Thanks. I have to do this recursively hence looking for a perl function.
I found File::Xcopy
update|UD - copy files only if
1) the file exists in the target and
2) newer in time stamp
http://search.cpan.org/~geotiger/File-Xcopy-0.12/Xcopy.pm#xmove($from,_$to,_$pat,_$par)