| The Wikibook Guide to Unix has a page on the topic of |
mv (short for move) is a Unix command that moves one or more files or directories from one place to another. The original filename or directory name is no longer accessible. The new filename may be same in another directory and/or a different filename. When the original and new files are on the same file system, mv will rename the file instead. Write permission is required on all directories being modified.
Contents |
When a filename is moved to an existing filename (in the same directory), the existing file is deleted. If the existing file is not writable but is in a directory that is writable, the mv command asks for confirmation ( if run from a terminal) before proceeding, unless the -f (force) option is used.
Usually moving files within the same file system is not the same as copying and then removing the original. First a new link is added to the new directory then the original link is deleted. The data of file is not accessed. This is much it is faster than copy and remove. The file still has the same inode.
When moving files to a different file system, all files are copied and then all files are removed. If the copy fails (as in not enough space) none of the original files are removed and all of the copied files remain (and the volume remains full!). If the files are on one volume, an out of space condition cannot occur.
You cannot copy a file if you do not have read permissions, but you can move it if you have write permission to its old and new directories.
If you do not have write permission to a non-empty directory, you cannot delete this directory (since you cannot delete its contents); but you can move it.
Most versions[1] of mv support:
Additional options (Use man mv for details):
mv myfile mynewfilename renames a file and deletes the existing file "myfile" mv myfile /myfile moves 'myfile' from the current directory to the root directory mv myfile dir/myfile moves 'myfile' to 'dir/myfile' relative to the current directory mv myfile dir same as the previous command (the filename is implied to be the same) mv myfile dir/myfile2 moves 'myfile' to dir and renames it to 'myfile2' mv foo bar baz dir moves multiple files to directory dir mv --help shows a very concise help about the syntax of the command man mv prints an extensive user manual for 'mv' in the terminal
In all cases, the file or files being moved or renamed can be a directory.
Note that when the command is called with two arguments (as mv name1 name2 or mv name1 /dir/name2), it can have three different effects, depending on whether name2 does not exist, is an existing file, or is an existing directory. If the user intends to refer to an existing directory, /. (or in some Unix versions / is sufficient) may be appended to the name to force the system to check this. To move a file to a new directory, the directory must be created first.
mv: move files – Commands & Utilities Reference, The Single UNIX® Specification, Issue 7 from The Open Groupmv(1): move (rename) files – Linux User Commands Manual
|
||||||||||||||||||||||||||
stock | retire | vm
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History