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

3.命令参数:

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

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

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

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

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

命令示例:

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


1

2

3

4


[[email protected] ~]# cd /tmp

[[email protected] tmp]# cp ~/.bashrc bashrc

[[email protected] tmp]# mkdir mvtest

[[email protected] tmp]# mv bascrc mvtest

2.目录重命名


1

2

3


[[email protected] tmp]# mv mvtest mvtest2

[[email protected] tmp]# ls

bitrock_installer.log  DejaVuSans.ttf  mvtest2  tmpWxkbQK  yum.log

3.移动多个文件


1

2

3

4

5


[[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参数,将文件改名,如果目标已存在,则询问是否覆盖


1

2


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

mv: overwrite `bashrc2‘? y

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


1

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

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


1

2

3

4

5

6

7

8


[[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.把子目录里的文件移动到另一个子目录下


1

2

3

4

5

6

7

8

9

10

11

12

13


[[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参数,文件被覆盖前做简单的备份


1

2

3

4

5

6

7

8

9

10


[[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:使用简单备份:在被覆盖前进行了简单备份,简单备份只能有一份,再次被覆盖时,简单备份也会被覆盖。

时间: 2024-12-25 11:59:38

Linux命令(12):mv命令的相关文章

2.10 环境变量PATH 2.11 cp命令 2.12 mv命令 2.13 文档查看cat/more/less/head/tail

2.10 环境变量PATH 2.11 cp命令 2.12 mv命令 2.13 文档查看cat/more/less/head/tail 2.10 环境变量PATH 如果你的目录在这里面 那么你敲命令句不需要敲绝对路径 但是如果再打开一个终端, 怎么让永久生效呢 系统有一个文件,是可以让它开机 或者是每次打开终端 都回去加载命令的 cat 一下看下文件有没有加上 命令 再打开一个终端 也是可以的 如果先取消掉 就重新改下变量PATH 还可以把里面的命令删掉 vi /etc/profile 重新退出

小知识点:linux下的mv命令怎么用?

linux下的mv命令怎么用? mv a.txt b.txt  将a.txt 改名为b.txtmv a.txt /mnt/b.txt    同时更改路径为/mnt/mv a.txt /opt/ftp/    将a.txt  剪切到/opt/ftp/下常用的用法就是以上.

2.10 环境变量PATH 2.11 cp命令 2.12 mv命令 2.13 文档查看cat/mor

2.10 环境变量PATH 1.环境变量 查看 PATH环境变量: 只要命令在上述的环境变量中,敲命令就不需要使用绝对路径 如图,将cp命令复制到.tmp目录下,效果和使用ls是一样的 如果想直接使用ls2 ,需要改环境变量: 如图,将/tmp添加到PATH环境变量中,echo PATH,将显示tmp,直接使用ls2 会发现和使用ls效果一样的: 如图,新开一个窗口,发现使用ls2不能生效了,说明ls2 没能在PATH中永久生效, 如果需要永久生效: 在新开一个窗口, 发现可以使用了 如果不想使

Linux命令学习-mv命令

Linux中,mv命令的全称是move,主要作用是移动文件或文件夹,类似于Windows下的剪切功能,同时还可以用于修改名字. 假设当前处于wintest用户的主目录,路径为 /home/wintest ,存在文件夹testA.testB和testC,而testA文件夹下存在子文件夹testB1和testD,testB下存在文件test.ini 在testA目录下,将testD文件夹移动到当前用户主目录 mv testD ~/ 在testB目录下,将test.ini文件移动到testA文件夹下

linux中关于mv命令的运用

mv  重命名或者移动 通过which命令查看mv命令的绝对路径,发现mv是做了别名的,实际命令是mv -i,-i的意思是询问确认 有时我们使用/bin/mv来避免询问,  当我们mv目录时,注意:若是目标目录存在的情况下,那么会把源目录移动到目标目录里例: 创建一个目录11 将/etc/11移动到/tmp,依然取名11(原本/tmp里没有11目录)    查看/tmp,此时/tmp里有一个11的目录    再试验    按上述方式,将/var/11移动到/tmp,   /tmp里依然有11目录

linux初学者12个命令

我相信对命令行的恐惧是Linux新用户犯的最大的一个错误.由于这个原因,让我们来看看Linux用户应该知道的一些基本的命令行. 1. Man 我从"man"命令开始是因为从很多方面来看,它都是最基本的一个命令.这个命令是你在需要了解其他命令时需要使用的命令. 从本质上来讲,"man"命令给出在线书册中其他命令的一个简单的介绍.通过它你可以了解这些命令行的基本功能和使用方法.你甚至可以输入"man man"直接得到"man"的使

linux常用命令(6)mv命令

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

每天一个linux命令:mv命令

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

CentOS Linux 系统命令之mv命令

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

linux rm cp mv 命令实例

删除复制移动文件命令 Linux代码 rm -rf /file -r:递归处理参数-f:强制删除所有文件 Linux代码 cp /test1/file1 /test3/file2 将file1复制到test3下,并改名为file2 Linux代码 cp -a test test1 将test目录下的所有子目录复制到test1下 Linux代码 mv /test1/file1 /test2/test2 将file1移动到test2下,并改名为test2 cp命令 该命令d功能匙将给出d文件或目录拷