Scroll to navigation

MV(1) General Commands Manual MV(1)

NAME

mv - Move SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

SYNOPSIS

mv [-f|--force] [-i|--interactive] [-n|--no-clobber] [--strip-trailing-slashes] [--backup] [-b ] [-S|--suffix] [--update] [-u ] [-t|--target-directory] [-T|--no-target-directory] [-v|--verbose] [-g|--progress] [-Z ] [--context] [--debug] [-h|--help] [-V|--version] <files>

DESCRIPTION

Move SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.

OPTIONS

do not prompt before overwriting
prompt before override
do not overwrite an existing file
remove any trailing slashes from each SOURCE argument
make a backup of each existing destination file
like --backup but does not accept an argument
override the usual backup suffix
move only when the SOURCE file is newer than the destination file or when the destination file is missing

Possible values:

  • none
  • all
  • older
  • none-fail
like --update but does not accept an argument
move all SOURCE arguments into DIRECTORY
treat DEST as a normal file
explain what is being done
Display a progress bar. Note: this feature is not supported by GNU coreutils.
set SELinux security context of destination file to default type
like -Z, or if CTX is specified then set the SELinux security context to CTX
explain how a file is copied. Implies -v
Print help
Print version
<files>

EXTRA

When specifying more than one of -i, -f, -n, only the final one will take effect.

Do not move a non-directory that has an existing destination with the same or newer modification timestamp; instead, silently skip the file without failing. If the move is across file system boundaries, the comparison is to the source timestamp truncated to the resolutions of the destination file system and of the system calls used to update timestamps; this avoids duplicate work if several mv -u commands are executed with the same source and destination. This option is ignored if the -n or --no-clobber option is also specified. which gives more control over which existing files in the destination are replaced, and its value can be one of the following:

- all This is the default operation when an --update option is not specified, and results in all existing files in the destination being replaced. - none This is similar to the --no-clobber option, in that no files in the destination are replaced, but also skipping a file does not induce a failure. - older This is the default operation when --update is specified, and results in files being replaced if they’re older than the corresponding source file.

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

VERSION

v(uutils coreutils) 0.8.0

EXAMPLES

Rename a file or directory when the target is not an existing directory:

mv path/to/source path/to/target

Move a file or directory into an existing directory:

mv path/to/source path/to/existing_directory

Move multiple files into an existing directory, keeping the filenames unchanged:

mv path/to/source1 path/to/source2 ... path/to/existing_directory

Do not prompt for confirmation before overwriting existing files:

mv [-f|--force] path/to/source path/to/target

Prompt for confirmation interactively before overwriting existing files, regardless of file permissions:

mv [-i|--interactive] path/to/source path/to/target

Do not overwrite existing files at the target:

mv [-n|--no-clobber] path/to/source path/to/target

Move files in verbose mode, showing files after they are moved:

mv [-v|--verbose] path/to/source path/to/target

Specify target directory so that you can use external tools to gather movable files:

find /var/log -type f -name '*.log' -print0 | xargs -0 mv [-t|--target-directory] path/to/target_directory

The examples are provided by the tldr-pages project <https://tldr.sh> under the CC BY 4.0 License. Please note that, as uutils is a work in progress, some examples might fail.

2026-05-17