mv:移动文件或者将文件改名

前言:

  mv是move的缩写,顾名思义是移动。它的功能既能移动文件/文件夹,又可以用来改名,经常用来做文件的备份,比如再删除之前,先给文件做备份(保护数据)也是linux常用命令之一。

名称

  mv - move (rename) files  移动(重命名)文件

使用方法

mv [选项]  原目录  目的目录

   mv [选项]  原文件  目标文件 

描述

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

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

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

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

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

实战演示:

使用默认移动命令移动文件

 [root@moban /]# touch test.txt                新建一个文件来进行测试
[root@moban /]# mv test.txt /lcp/abc/            mv命令后面直接跟要移动的文件,如果不再本目录则需要加目标文件的路径
[root@moban /]# ll /lcp/abc/                 使用ll命令查看/lcp/abc/文件夹下包含什么文件(此命令后期讲解)
total
-rw-r--r--. root root Jan : test.txt      所看到的test.txt文件就是移动过来的文件
[root@moban /]# ll test.txt                  在使用ll命令查看当前目录是否还存在test.txt文件
ls: cannot access test.txt: No such file or directory   显示不存在这个文件,则代表移动成功。

使用mv命令修改文件

 [root@moban /]# cd /lcp/abc                  打开测试目录,此处可以忽略,如果新手思维能力强,可以直接使用
                                   mv /原文件目录/原文件名称 /目标文件路径/目标文件名称
                                   如:mv /lcp/abc/test.txt /lcp/abc/test.abc
[root@moban abc]# ll                      查看一下当前文件的名字
total
-rw-r--r--. root root Jan : test.txt       是test.txt
[root@moban abc]# mv test.txt test.abc            使用mv命令改名, mv 后面跟原文件名 跟目标文件名
[root@moban abc]# ll
total
-rw-r--r--. root root Jan : test.abc      修改后的结果

使用mv命令移动文件

  说明:

  将1.txt 移动到根目录下的123文件夹中

 [root@moban ~]# touch .txt                          新建一个测试文件1.txt
[root@moban ~]# ll                               查看当前文件
total
-rw-r--r--. root root Feb : .txt
-rw-------. root root Jan : anaconda-ks.cfg
-rw-r--r--. root root Jan : install.log
-rw-r--r--. root root Jan : install.log.syslog
[root@moban ~]# mkdir /123                          在根目录下新建一个123的文件夹
[root@moban ~]# mv .txt //                       使用mv 命令 跟需要移动的文件然后跟 需要移动到的目录
[root@moban ~]# cd //                   
[root@moban ]# ll                             打开这个目录查看一下是否移动成功
 total   -rw-r--r--.  root root  Feb  : .txt

使用mv命令移动多个文件

  说明:

  将文件 1 2 3 4 文件移动到 /test文件夹中

 [root@moban ~]# ll                            查看一下当前的文件1、2、3、4文件
total
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :
-rw-------. root root Jan : anaconda-ks.cfg
-rw-r--r--. root root Jan : install.log
-rw-r--r--. root root Jan : install.log.syslog
[root@moban ~]# mv /tmp/test                  使用mv,后面跟文件名用空格隔开,在跟路径名称
[root@moban ~]# cd /tmp/test/      
[root@moban test]# ll                            打开查看一下
total
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :
-rw-r--r--. root root Feb :

使用mv命令移动目录

  说明:

  使用mv移动目录文件目录及目录名直接跟目标目录即可。

   将data1移动到data2中
 [root@moban test]# mv data1 data2             首先data1与data2都是文件夹、将data1移动到data2中
[root@moban test]# ll
total
drwxr-xr-x. root root Feb : data2
[root@moban test]# cd data2/                打开data2中查看是否存在data1?
[root@moban data2]# ll
total
drwxr-xr-x. root root Feb : data1

文件被覆盖前做简单备份

  说明:

  加-b参数进行简单备份

 [root@moban data1]# ll
total
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .txt
[root@moban data1]# mv .txt -b .txt
mv: overwrite `.txt'? y
[root@moban data1]# ll
total
-rw-r--r--. root root Feb : .txt
-rw-r--r--. root root Feb : .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:使用简单备份:在被覆盖前进行了简单备份,简单备份只能有一份,再次被覆盖时,简单备份也会被覆盖。

【初级】linux mv 命令详解及使用方法实战的更多相关文章

  1. 【初级】linux rm 命令详解及使用方法实战

    rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就 ...

  2. 【初级】linux pwd 命令详解及使用方法实战

    pwd:查看当前工作目录 前言: Linux中用 pwd 命令来查看”当前工作目录“的完整路径,就是经常提及的所在目录,多用在生产环境多级目录中查看当前所在路径,使用此命令能给运维人员/操作人员带来很 ...

  3. 【初级】linux mkdir 命令详解及使用方法实战

    mkdir命令详解及使用方法实战 名称 MKDIR 是 make directories 的缩写 使用方法 mkdir [选项(如-p)] ...目录名称(及子目录注意用分隔符隔开)...    如使 ...

  4. 【初级】linux cp 命令详解及使用方法实战

    cp:复制文件或者目录 前言: cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不 ...

  5. linux mv命令详解

    Linux mv命令 Linux mv命令用来为文件或目录改名.或将文件或目录移入其它位置. 用法: mv [选项]... [-T] 源文件 目标文件 mv [选项]... 源文件... 目录 mv ...

  6. Linux find命令详解

    转自Linux find命令详解 一.find 命令格式 1.find命令的一般形式为: find pathname -options [-print -exec -ok ...] 2.find命令的 ...

  7. [转帖]Linux chattr 命令详解

    Linux chattr 命令详解 https://www.cnblogs.com/ftl1012/p/chattr.html 常见命令参数 1 2 3 4 5 6 7 8 9 10 11 12 A: ...

  8. Linux常用命令详解—基于CentOS7

    ## Linux 目录- /:根目录,一般只存放目录,不存放文件- /bin -> /usr/bin:可执行二进制文件的目录,也是常用命令目录,如常用的命令 ls.cat.mv 等- /boot ...

  9. Linux常用命令详解下

    Linux常用命令详解 目录 一.Linux常用命令 1.1.查看及切换目录(pwd.cd.ls.du) 1.2.创建目录和文件(mkdir.touch.ln) 1.3.复制.删除.移动目录和文件(c ...

随机推荐

  1. nginx缓冲区优化

    关于缓冲, 主要是合理设置缓冲区大小, 尽量避免缓冲到硬盘时的情况 proxy_buffering proxy_buffering这个参数用来控制是否打开后端响应内容的缓冲区,如果这个设置为off,那 ...

  2. ie6、7 下input的边框问题 ?

    input的border设置为none,ie8及以上border都兼容,ie6和7的border还继续存在,将border设为0时所有浏览器上都不存在了,但是border为0时还是会继续的渲染. 将i ...

  3. [地图SkyLine二次开发]框架(3)

    上节将显示我们地图的OBJECT控件,布了一下局,但地图没有进行加载. 这是因为我们要在另一个页面,对OBJECT控件进行地图加载,并且得到该控件的sgworld,以便对其进行我们想要的开发. 这里, ...

  4. Netscape HTTP Cooke File Parser In PHP

    http://www.hashbangcode.com/blog/netscape-http-cooke-file-parser-php I recently needed to create a f ...

  5. maven-web项目中的一些小问题

    1.最新的jetty容器 org.eclipse.jetty 需要JDK1.8的支持. 2.在容器中发布WEB项目时web 中的pom.xml的依赖关系会丧失,依赖和插件需要单独完全编写(尽管IDE会 ...

  6. java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterEncodingFilter

    今天在用git merge 新代码后报了如下错误:java.lang.ClassNotFoundException: org.springframework.web.filter.CharacterE ...

  7. message from server: "Host 'XXX' is not allowed to connect to this MySQL server

    Access denied for user 'root'@'XXXXX' (using password: YES) mysql命令不正确造成: grant all privileges on *. ...

  8. java模拟面试 试题

    java 四类八种基本数据类型 第一类:整型 byte short int long 第二类:浮点型 float double 第三类:逻辑型 Boolean(取值为 true false) 第四类: ...

  9. webstorm node 3000端口被占用

    首先说明我的问题原因,一个服务端程序用3000端口打开后,未关闭,直接强制关闭的webstorm,关闭的时候提示disconnect了,也点击了,但是打开另外一个文件,再用3000端口打开的话会提示被 ...

  10. HTML/CSS总结1

    1.定义网页背景颜色 <body bgcolor="背景色"> 颜色可以用2种方式表示:1. 直接指定颜色名称,如blue.2.使用十六进制数据表示如#RRGGBB,分 ...