OSETC TECH

Linux: How to Rename Directory

This post will guide you how to change or rename a file or directory under Linux operating system. How do I rename a directory via command line in Linux.

Rename Directory in Linux


You can use mv (move) command to remove for either a directory or a file. This command also can be used to move file to other directory in Linux. To rename a file or directory, you can refer the following syntax:

mv /path/oldDir /path/newDir

You need to add one or more space between old and new directory names.

For example, renaming a directory called fio to fio.new in your current directory, type the following command:

# mv ./fio ./fio.new

Outputs:

root@devops-osetc:/home/devops/working# ls -d fio
fio
root@devops-osetc:/home/devops/working# mv ./fio ./fio.new

root@devops-osetc:/home/devops/working# ls -d fio.new
fio.new

If you want to move one directory call fio.new to another directory /tmp, you can use the following command:

# mv ./fio.new /tmp

Outputs:

root@devops-osetc:/home/devops/working# mv ./fio.new/ /tmp
root@devops-osetc:/home/devops/working#
root@devops-osetc:/home/devops/working# ls /tmp
fio.new

If you want to show what is being done for mv command, you can use mv command with -v option, type:

root@devops-osetc:/home/devops/working# mv -v fio /tmp
'fio' -> '/tmp/fio'
root@devops-osetc:/home/devops/working# ls /tmp
fio

More Help for Mv Command


If you want to get more information or usage about mv command, you can use the following command:

# mv --help

or

# man mv

Outputs:

root@devops-osetc:/home/devops/working# mv --help
Usage: mv [OPTION]... [-T] SOURCE DEST
or: mv [OPTION]... SOURCE... DIRECTORY
or: mv [OPTION]... -t DIRECTORY SOURCE...
Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

Mandatory arguments to long options are mandatory for short options too.
--backup[=CONTROL] make a backup of each existing destination file
-b like --backup but does not accept an argument
-f, --force do not prompt before overwriting
-i, --interactive prompt before overwrite
-n, --no-clobber do not overwrite an existing file
If you specify more than one of -i, -f, -n, only the final one takes effect.
--strip-trailing-slashes remove any trailing slashes from each SOURCE
argument
-S, --suffix=SUFFIX override the usual backup suffix
-t, --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY
-T, --no-target-directory treat DEST as a normal file
-u, --update move only when the SOURCE file is newer
than the destination file or when the
destination file is missing
-v, --verbose explain what is being done
-Z, --context set SELinux security context of destination
file to default type
--help display this help and exit
--version output version information and exit

The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.
The version control method may be selected via the --backup option or through
the VERSION_CONTROL environment variable. Here are the values:

none, off never make backups (even if --backup is given)
numbered, t make numbered backups
existing, nil numbered if numbered backups exist, simple otherwise
simple, never always make simple backups

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Full documentation at: <http://www.gnu.org/software/coreutils/mv>
or available locally via: info '(coreutils) mv invocation'