In its first form, the utility renames the file named by the source operand to the destination path named by the target operand. This form is assumed when the last operand does not name an already existing directory.
In its second form, moves each file named by a source operand to a destination file in the existing directory named by the directory operand. The destination path for each operand is the pathname produced by the concatenation of the last operand, a slash, and the final pathname component of the named file.
The following options are available:
The last of any -f or -i options is the one which affects 's behavior.
It is an error for either the source operand or the destination path to specify a directory unless both do.
If the destination path does not have a mode which permits writing, prompts the user for confirmation as specified for the -i option.
As the rename(2) call does not work across file systems, uses cp(1) and rm(1) to accomplish the move. The effect is equivalent to:
rm -f destination_path && \ cp -PRp source_file destination && \ rm -rf source_file
The utility exits 0 on success, and >0 if an error occurs.