I have got the directory /home/user/oldname and I want to rename it to /home/user/newname. How can I do this in a terminal?
- 21,004
- 18,589
7 Answers
mv can do two jobs.
- It can move files or directories
- It can rename files or directories
To just rename a file or directory type this in Terminal:
mv old_name new_name
with space between the old and new names.
To move a file or directory type this in Terminal.
mv file_name ~/Desktop
it will move the file to the desktop.
mv -T /home/user/oldname /home/user/newname
That will rename the directory if the destination doesn't exist or if it exists but it's empty. Otherwise it will give you an error.
If you do this instead:
mv /home/user/oldname /home/user/newname
One of two things will happen:
- If
/home/user/newnamedoesn't exist, it will rename/home/user/oldnameto/home/user/newname - If
/home/user/newnameexists, it will move/home/user/oldnameinto/home/user/newname, i.e./home/user/newname/oldname
Source: How to decide that mv moves into a directory rather than replacing directory?
If you want to rename a directory at your level in the file system (e.g., you are at your home directory and want to rename a directory that is also in your home directory):
mv Directory ./NewNameDirectory
- 121
- 1
- 2
This gvfs-move command will also rename files and directories.
gvfs-move /home/user/oldname /home/user/newname
- 80,446
gvfs-rename will rename directories as well. It will give an error if a directory with the new name already exists. The only limitation is that you can't use a path with the folder name. So
gvfs-rename /home/boo /home/boo-the-dog
will not work, but
cd /home
gvfs-rename boo boo-the-dog
will work. Not as useful as mv -T but I read in the man that it was meant for network operations.
- 1,093
My preferred method is using: vidir because I love vi
Install moreutils
sudo apt update; sudo apt install moreutils
Call command vidir in your home-directory
vidir ~
Now search for the directory to change, using slash / e.g. /oldname make the changes, then press = ESC type :wq
Done!
- 3,300