mv Cheatsheet
Basic Syntax
Core command forms for move and rename operations.
| Command | Description |
|---|---|
mv [OPTIONS] SOURCE DEST |
Move or rename one file/directory |
mv [OPTIONS] SOURCE... DIRECTORY |
Move multiple sources into destination directory |
mv file.txt newname.txt |
Rename file in same directory |
mv dir1 dir2 |
Rename directory |
Move Files
Move files between directories.
| Command | Description |
|---|---|
mv file.txt /tmp/ |
Move one file to another directory |
mv file1 file2 /backup/ |
Move multiple files |
mv *.log /var/log/archive/ |
Move files matching pattern |
mv /src/file.txt /dest/newname.txt |
Move and rename in one step |
Move Directories
Move or rename complete directory trees.
| Command | Description |
|---|---|
mv project/ /opt/ |
Move directory to another location |
mv olddir newdir |
Rename directory |
mv dir1 dir2 /dest/ |
Move multiple directories |
mv /src/dir /dest/dir-new |
Move and rename directory |
Overwrite Behavior
Control what happens when destination already exists.
| Command | Description |
|---|---|
mv -i file.txt /dest/ |
Prompt before overwrite |
mv -n file.txt /dest/ |
Never overwrite existing file |
mv -f file.txt /dest/ |
Force overwrite without prompt |
mv -u file.txt /dest/ |
Move only if source is newer |
Backup and Safety
Protect destination files while moving.
| Command | Description |
|---|---|
mv -b file.txt /dest/ |
Create backup of overwritten destination |
mv --backup=numbered file.txt /dest/ |
Numbered backups (.~1~, .~2~) |
mv -v file.txt /dest/ |
Verbose output |
mv -iv file.txt /dest/ |
Interactive + verbose |
Useful Patterns
Common real-world mv command combinations.
| Command | Description |
|---|---|
mv -- *.txt archive/ |
Move files when names may start with - |
mv "My File.txt" /dest/ |
Move file with spaces in name |
find . -maxdepth 1 -name '*.tmp' -exec mv -t /tmp/archive {} + |
Move matched files safely with find |
mv /path/file{,.bak} |
Quick rename via brace expansion |
Troubleshooting
Quick checks for common move/rename errors.
| Issue | Check |
|---|---|
No such file or directory |
Verify source path with ls -l source |
Permission denied |
Check destination permissions and ownership |
| Wrong file overwritten | Use -i or -n for safer moves |
| Wildcard misses hidden files | * does not match dotfiles by default |
| Option-like filename fails | Use -- before source names |
Related Guides
Use these guides for detailed move and rename workflows.
| Guide | Description |
|---|---|
How to Move Files in Linux with mv Command
|
Full mv guide with examples |
How to Rename Files in Linux
|
File renaming patterns and tools |
How to Rename Directories in Linux
|
Directory rename methods |
Cp Command in Linux: Copy Files and Directories
|
Compare copy vs move workflows |
