rename
function. But that
may not work everywhere, in particular, renaming files across file systems.
If your operating system supports a mv
program or its moral
equivalent, this works:
rename($old, $new) or system("mv", $old, $new);
It may be more compelling to use the File::Copy module instead. You just copy to the new file to the new name (checking return values), then delete the old one. This isn't really the same semantics as a real rename, though, which preserves metainformation like permissions, timestamps, inode info, etc.