What Perl does have is multiple mechanisms for running
*nix commands. Often this is the clearest way to do
something. Would you rather write 10+ lines of code,
checking whether a node is a file or a directory then
making that directory or copying that file or would you
prefer the following?
`cp -rp blah1 blah2`;
or
system ("cp -rp blah1 blah2");
or even
qx/cp -rp blah1 blah2/;
Just don't forget to check the process' return value "$?"