首页 > 技术文章 > linux命令学习之:mv

jing99 2017-11-27 23:44 原文

  mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。

命令格式
    mv [选项] 源文件或目录 目标文件或目录

命令功能
  根据mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中:

  当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。

  当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

mv [optionsexisting-file new-filename  existing-file 是需要重命名的文件路径; new-filename 是文件的新路径名,用于重命名或覆盖

mv [optionsexisting-file-list directory  existing-file 是需要移动的文件路径列表; directory 是文件需要移动到的新目录,用于移动

mv [optionsexisting-directory new-directory  existing-file 是需要重命名的目录路径; new-directory 是目录的新路径名,用于重命名或覆盖

  在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

选项说明

-b :若需覆盖文件,则覆盖前先行备份。 

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖,指定此参数后i参数将不再起作用;

-i :交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答”y”或”n”,这样可以避免误覆盖文件

-u :若目标文件已经存在,且 source 比较新,才会更新(update) 

-v :列出所有被移动或重命名的文件

-t  : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

 常用示例

1、重命名文件或者文件夹

mv  file1  file2
mv  directory  new-directory

2、移动文件到目录下

mv file_1.txt  /home/pungki/office

3、移动多文件到目录

mv file_2.txt file_3.txt file_4.txt /home/pungki/office

4、使用通配符移动多文件

mv *.txt /home/pungki/office

5、打印移动信息

mv -v *.txt /home/pungki/office

6、使用交互模式移动

mv -i file_1.txt /home/pungki/office

7、使用更新选项移动

mv -uv *.txt /home/pungki/office

8、不覆盖任何已有现存文件

mv -vn *.txt /home/pungki/office

9、备份重名文件

mv -bv *.txt /home/pungki/office

  那个波浪符号(~)结尾的文件意味着这些文件是备份文件。

10、无条件覆盖已有重名文件

mv -f *.txt /home/pungki/office

推荐阅读