You are viewing the version of this documentation from Perl blead. This is the main development branch of Perl. (git commit 233e70e50b57acf34a1003a191ae9a57e8706973)
rename OLDNAME,NEWNAME

Changes the name of a file; an existing file NEWNAME will be clobbered. Returns true for success; on failure returns false and sets $!.

Behavior of this function varies wildly depending on your system implementation. For example, it will usually not work across file system boundaries, even though the system mv command sometimes compensates for this. Other restrictions include whether it works on directories, open files, or pre-existing files. Check perlport and either the rename(2) manpage or equivalent system documentation for details.

For a platform independent move function look at the File::Copy module.

Portability issues: "rename" in perlport.