More than likely your version of perl was built with some version of sh and system uses that. Some versions of sh (bash) have a noclobber setting that prevents overwriting of existing files. I would check either the user's shell settings (~/.bashrc for bash) or the default system settings (/etc/bashrc) for a noclobber setting and reset appropriately.
If you cannot unset the noclobber setting, you will have to use the syntax appropriate for the shell being used by perl -- which for bash is the rather clumsy >|
|