HowTo: Move A Folder In Linux Using mv Command

by on September 15, 2011 · 0 comments· LAST UPDATED September 15, 2012

in

How do I move a folder in BSD/Linux/Apple OX or Unix operating system using bash command line option?

You need to use the mv command to move folder, files, and directories in Linux terminal. The syntax is as follows:

mv source target
mv folder1 folder2 target
mv folder1 file1 target
mv -option source target

The following example would move a folder named documents, without changing its name, from the current directory to an existing subdirectory of the current directory named /backups:

 
mv documents /backups
 

mv command can be used to move any number of files and folders in a single command. In this example, the following command moves all folders, including all the contents of those directories, from the current directory to the directory called /nas03/users/home/v/vivek

 
mv * /nas03/users/home/v/vivek
 

Please note that the asterisk is a wildcard character that represents all files and folders the current directory. In this next example, move only foo and bar folders from the /home/tom directory to the directory called /home/jerry:

 
mv /home/tom/foo /home/tom/bar /home/jerry
 

OR

 
cd /home/tom
mv foo bar /home/jerry
 

mv can see explain what is being done with the -v option i.e. it shows the name of each file before moving it:

 
mv -v /home/tom/foo /home/tom/bar /home/jerry
 

Sample outputs:

`/home/tom/foo/' -> `/home/jerry/foo'
`/home/tom/bar/' -> `/home/jerry/bar'

You can prompt before overwrite i.e. pass the -i option to make mv interactive if the same name files/folder already exists in the destination directory:

 
mv -i foo /tmp
 

Sample outputs:

mv: overwrite `/tmp/foo'? 

Other options

Taken from the man page of gnu/mv command:

 
       --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
 
       -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
 
TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 0 comments… add one now }

Leave a Comment

Tagged as: , , , , , , ,

Previous Faq:

Next Faq: