功能描述
mv 可移动文件或目录,或是更改文件或目录的名称。
命令语 法
mv [-bfiuv][--help][--version][-S ][-V ][源文件或目录][目标文件或目录]
选项含义
选项
含义
-b
若需覆盖文件,则覆盖前先行备份。
-f
若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文 件或目录。
-i
覆盖前先行询问用户。
--suffix=
-b 参数一并使用,可指定备份文件的所要附加的字尾。
-u
在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。
-v
执行时显示详细的信息。
--version-control=
-b 参数一并使用,可指定备份的方法。
--help
显示帮助。
--version
显示版本信息。
用户可以使用mv命令来移动文件或目录至另一文件或目录,还可以将目录或文件重命名。mv只接收两个参数,第1个为要移动或重命名的文件或目   录,第2个为新文件名或目录。当mv接收两个参数或多个参数时,如果最后一个参数对应的是目录而且该目录存在,mv会将各参数指定的文件或目录移动到此目录中,如果目的文件存在时,将会进行覆盖。
[root@CentOS conf]# cp -a nginx.conf.bak nginx.conf.20150412
[root@CentOS conf]# ls -ltotal 72
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.20150412
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.bak
#如果目标文件已经存在,将会询问用户是否覆盖
[root@CentOS conf]# /bin/mv -i nginx.conf.20150412 nginx.conf.bak
/bin/mv: overwrite nginx.conf.bak'? y
[root@CentOS conf]# ls -ltotal 72
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.bak
[root@CentOS conf]# cp -a nginx.conf.bak nginx.conf.20150412
[root@CentOS conf]# ls -ltotal 72
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.20150412
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.bak
#在要覆盖某已有的目标文件时不给任何提示信息
[root@CentOS conf]# /bin/mv -f nginx.conf.20150412 nginx.conf.bak
[root@CentOS conf]# ls -ltotal 68
-rw-r--r--. 1 root root 2685 Apr 12 22:52 nginx.conf.bak
为避免误覆盖文件,建议使用mv命令移动文件时,最好使用“-i”选项。
移动多个文件
如果想一次移动多个文件,我们可以将他们放在一行并用空格分开。
[root@CentOS conf]# mv file_2.txt file_3.txt file_4.txt /home/pungki/office
如果你的文件有规律可循的话那么你就可以使用通配符。比如,为了移除所有以.txt为扩展名的文件,我们可以用下面的命令:
[root@CentOS conf]# mv *.txt /home/pungki/office
重命名文件或目录
我们也用 mv 命令来重命名文件或目录。不过目标位置和源位置必须相同才可以。然后文件名必须不同。
假定我们当前所在目录为/home/pungki/Documents,而我们想将file_1.txt重命名为file_2.txt。那么命令应该如下:
[root@CentOS conf]# mv file_1.txt file_2.txt
如果是绝对路径,它应该像下面这样:
[root@CentOS conf]# mv /home/pungki/Documents/file_1.txt /home/pungki/Documents/file_2.txt