Linux mv命令

Linux中mv(move)命令是移动文件和目录的。常用来备份文件和目录

1.命令格式:

mv [选项] 源文件或目录 目标文件或目录

语法:

mv [OPTION]... [-T] SOURCE DEST

mv [OPTION]... SOURCE... DIRECTORY

mv [OPTION]... -t DIRECTORY SOURCE...

2.命令功能:

视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

3.命令参数:

-f : force强制的意思,如果目标文件已经存在,不会询问而直接覆盖

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

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

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

-t :即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后

命令示例:

1.复制一个文件夹,创建一个目录,将文件移动到目录中

[[email protected] ~]# cd /tmp
[[email protected] tmp]# cp ~/.bashrc bashrc
[[email protected] tmp]# mkdir mvtest
[[email protected] tmp]# mv bascrc mvtest

2.目录重命名

[[email protected] tmp]# mv mvtest mvtest2
[[email protected] tmp]# ls
bitrock_installer.log  DejaVuSans.ttf  mvtest2  tmpWxkbQK  yum.log

3.移动多个文件

[[email protected] tmp]# cp ~/.bashrc bashrc1
[[email protected] tmp]# cp ~/.bashrc bashrc2
[[email protected] tmp]# mv bashrc1 bashrc2 mvtest2
[[email protected] tmp]# ls /tmp/mvtest2/
bashrc  bashrc1  bashrc2

注:如果有多个源文件或目录,则最后一个目标文件一定是“目录”
4.-i参数,将文件改名,如果目标已存在,则询问是否覆盖

[[email protected] mvtest2]# mv -i bashrc1 bashrc2
mv: overwrite `bashrc2‘? y

5.-f参数,强制改名,即使目标名称存在,也是直接覆盖

[[email protected] mvtest2]# mv -f bashrc1 bashrc2

6.移动当前文件夹下的所有文件到上一级目录

[[email protected] mvtest2]# ls                    mvtest2下有一个bashrc2的文件
bashrc2
[[email protected] mvtest2]# mv * ../              移动mvtest2下的文件到上一级目录
[[email protected] mvtest2]# cd -                  回退到上一级目录
/tmp
[[email protected] tmp]# ls                        查看bashrc2已经移动到该目录
bashrc2  bitrock_installer.log  DejaVuSans.ttf  mvtest2  tmpWxkbQK  yum.log
[[email protected] tmp]#

7.把子目录里的文件移动到另一个子目录下

[[email protected] mvtest2]# ls                   mvtest2下有4个txt文件
1.txt  2.txt  3.txt  4.txt
[[email protected] mvtest2]# cd -                 回到上一级目录
/tmp
[[email protected] tmp]# mkdir mvtest3            创建mvtest3文件夹
[[email protected] tmp]# ls                        
bashrc2                DejaVuSans.ttf  mvtest3    yum.log
bitrock_installer.log  mvtest2         tmpWxkbQK
[[email protected] tmp]# mv mvtest2/*.txt mvtest3    把mvtest2下的txt文件移动到mvtest3下
[[email protected] tmp]# ls mvtest3                  查看mvtest3下的文件是否复制过来
1.txt  2.txt  3.txt  4.txt
[[email protected] tmp]# ls mvtest2                  mvtest2下已没有那4个txt文件
[[email protected] tmp]#

8.-b参数,文件被覆盖前做简单的备份

[[email protected] mvtest3]# ls
2.txt  3.txt  4.txt  888.txt
[[email protected] mvtest3]# mv 2.txt -b 888.txt            -b参数
mv: overwrite `888.txt‘? y
[[email protected] mvtest3]# ll
total 0
-rw-r--r--. 1 root root 0 Apr 12 09:37 3.txt
-rw-r--r--. 1 root root 0 Apr 12 09:37 4.txt
-rw-r--r--. 1 root root 0 Apr 12 09:37 888.txt
-rw-r--r--. 1 root root 0 Apr 12 09:37 888.txt~       ~的为备份文件

说明:

-b 不接受参数,mv会去读取环境变量VERSION_CONTROL来作为备份策略。

--backup该选项指定如果目标文件存在时的动作,共有四种备份策略:

1.CONTROL=none或off : 不备份。

2.CONTROL=numbered或t:数字编号的备份

3.CONTROL=existing或nil:如果存在以数字编号的备份,则继续编号备份m+1...n:

执行mv操作前已存在以数字编号的文件log2.txt.~1~,那么再次执行将产生log2.txt~2~,以次类推。如果之前没有以数字编号的文件,则使用下面讲到的简单备份。

4.CONTROL=simple或never:使用简单备份:在被覆盖前进行了简单备份,简单备份只能有一份,再次被覆盖时,简单备份也会被覆盖。

学习参考:

http://www.cnblogs.com/peida/archive/2012/10/27/2743022.html

时间: 2024-11-12 01:54:42

Linux mv命令的相关文章

Linux命令:mv命令 文件移动和重命名

当你想要将文件从一个位置移动到另一个地方并且不想复制它,那么mv 命令是完成这个任务的首选. 初识 mv 命令 mv 命令是一个与cp类似的命令,但是它并非创建文件或目录的复制品/副本.不管你在使用什么版本的Linux系统,mv 都默认安装在你的Linux系统上了.来看一下 mv 命令在日常操作中的一些例子. 1.移动文件 移动文件时需要注意的是文件的源地址和目标地址必须不同.这里有个例子,想要将file_1.txt文件从当前目录移动到其它目录,以/home/pungki/为例,语法应该如下:

【Linux】- mv命令

Linux mv命令用来为文件或目录改名.或将文件或目录移入其它位置. 语法 mv [options] source dest mv [options] source... directory 参数说明: -i:若指定目录已有同名文件,则先询问是否覆盖旧文件; -f:在mv操作要覆盖某已有的目标文件时不给任何指示; mv参数设置与运行结果 mv 文件名 文件名 将源文件名改为目标文件名 mv 文件名 目录名 将文件移动到目标目录 mv 目录名 目录名 目标目录已存在,将源目录移动到目标目录:目标

Linux部分命令的总结(二)

1.Linux touch命令:创建文件及修改文件时间戳 touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数). Linux 系统中,每个文件主要拥有 3 个时间参数(通过 stat 命令进行查看),分别是文件的访问时间.数据修改时间以及状态修改时间: 访问时间(Access Time,简称 atime):只要文件的内容被读取,访问时间就会更新.例如,使用 cat 命令可

linux常用命令(6)mv命令

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录.1 命令格式:mv [选项] 原文件或目录 目标文件或目录2 命令功能:视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中.当第二个参数类型是文件时,mv命令完成重命名,此时源文件只能有一个(也可以使源目录名),它将所给的源文件或源目录重命名为给定的目标文件名.当第二个参数时已存在的目录名

Linux命令(12):mv命令

Linux中mv(move)命令是移动文件和目录的.常用来备份文件和目录 1.命令格式: mv [选项] 源文件或目录 目标文件或目录 语法: mv [OPTION]... [-T] SOURCE DEST mv [OPTION]... SOURCE... DIRECTORY mv [OPTION]... -t DIRECTORY SOURCE... 2.命令功能: 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中.当第二个参数类型是文件时

CentOS Linux 系统命令之mv命令

在Linux系统中,移动文件或者目录的命令是mv,同时mv命令还可以对文件改名. 命令格式:mv [选项] [源文件或目录] [目标文件或目录] 参数选项: --backup[=CONTROL]对一个存在的文件备份 -b      类似-backup,但接受参数 -f,      --force 覆盖前不提示. -I,     --interactive 覆盖前提示 -u,    --update 移动的文件如果是source(源文件)比较目标文件新,才会更新. -t,     指定mv的目标目

Linux常用命令(六) - mv

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 1.命令格式: mv [选项] 源文件或目录 目标文件或目录 2.命令功能: 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名. 当第二个参数

Linux下重命名文件或文件夹(mv命令与rename命令)

在Linux下重命名文件或目录,可以使用mv命令或rename命令 mv ------------ mv命令既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c mv /a /b/c 其实在文本模式中要重命名文件或目录,只需要使用mv命令就可以了,比如说要将一个名为abc的文件重命名为1234: mv abc 1234 注意,如果当前目录下也有个1234的文件的话,这个文件是会将它覆盖的. rename -----------

每天学习Linux(7)---mv命令

mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 1.命令格式: mv [选项] 源文件或目录 目标文件或目录 2.命令功能: 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中.当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名.当第二个参数是已