1、命令格式:

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

2、命令功能:

  Linux mv命令用来为文件或目录改名、或将文件或目录移入其它位置。

3、命令参数:

-b :若需覆盖文件,则覆盖前先行备份。
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会更新(update)
-t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

4、简单实例:

(1)、文件改名

命令:

  mv test.txt ttt.txt

输出:

felix@felix-computer:~/test$ ls
test.txt
felix@felix-computer:~/test$ mv test.txt ttt.txt
felix@felix-computer:~/test$ ls
ttt.txt
felix@felix-computer:~/test$

(2)、移动文件

命令:

  mv ttt.txt test3

输出:

felix@felix-computer:~/test$ tree
.
├── test3
└── ttt.txt 1 directory, 1 file
felix@felix-computer:~/test$ mv ttt.txt test3/
felix@felix-computer:~/test$ tree
.
└── test3
└── ttt.txt 1 directory, 1 file
felix@felix-computer:~/test$

(3)、移动多个文件到指定目录

命令:

  mv -t test4/ test3/*

输出:

felix@felix-computer:~/test$ tree
.
├── test3
│   ├── 1.txt
│   ├── 2.txt
│   ├── 3.txt
│   ├── 4.txt
│   └── ttt.txt
└── test4 2 directories, 5 files
felix@felix-computer:~/test$ mv -t test4/ test3/*
felix@felix-computer:~/test$ tree
.
├── test3
└── test4
├── 1.txt
├── 2.txt
├── 3.txt
├── 4.txt
└── ttt.txt 2 directories, 5 files
felix@felix-computer:~/test$

(4)、将文件1命名为文件2,如果文件2已存在,询问是否覆盖

命令:

  mv -i 3.txt 1.txt

输出:

felix@felix-computer:~/test/test4$ ls
1.txt 2.txt 3.txt 4.txt ttt.txt
felix@felix-computer:~/test/test4$ mv -i 3.txt 1.txt
mv:是否覆盖'1.txt'? y
felix@felix-computer:~/test/test4$ ls
1.txt 2.txt 4.txt ttt.txt
felix@felix-computer:~/test/test4$

(5)、将文件1命名为文件2,如果文件2已存在,直接覆盖

命令:

  mv -f 2.txt 1.txt

输出:

felix@felix-computer:~/test/test4$ mv -f 2.txt 1.txt
felix@felix-computer:~/test/test4$ ls
1.txt 4.txt ttt.txt
felix@felix-computer:~/test/test4$

(6)、目录移动,如果目录dir2不存在,将目录dir1改名为dir2;否则,将dir1移动到dir2中

命令:

  mv test4 test3

输出:

felix@felix-computer:~/test$ tree
.
├── test3
└── test4
├── 1.txt
├── 4.txt
└── ttt.txt 2 directories, 3 files
felix@felix-computer:~/test$ mv test4 test3
felix@felix-computer:~/test$ tree
.
└── test3
└── test4
├── 1.txt
├── 4.txt
└── ttt.txt 2 directories, 3 files
felix@felix-computer:~/test$

(7)、文件被覆盖前做简单备份

命令:

  mv 2.txt -b 1.txt

输出:

felix@felix-computer:~/test/test3/test4$ ls
1.txt 2.txt 3.txt 4.txt 5.txt 6.txt
felix@felix-computer:~/test/test3/test4$ mv 2.txt -b 1.txt
felix@felix-computer:~/test/test3/test4$ ls
1.txt 1.txt~ 3.txt 4.txt 5.txt 6.txt
felix@felix-computer:~/test/test3/test4$

linux系列(七):mv命令的更多相关文章

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

    linux下的mv命令怎么用? mv a.txt b.txt  将a.txt 改名为b.txtmv a.txt /mnt/b.txt    同时更改路径为/mnt/mv a.txt /opt/ftp/ ...

  2. [转帖]Linux系列之SAR命令使用详解

    Linux系列之SAR命令使用详解 sar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工 ...

  3. Linux 学习 (七) 挂载命令 & 用户登陆查看

    Linux达人养成计划 I 学习笔记 挂载命令 mount:查询系统中已经挂载的设备 mount -a:根据配置文件 /etc/fstab 的内容,自动挂载 mount [-t 文件系统] [-o 特 ...

  4. 【Linux系列】find命令使用

    Linux下find命令在目录结构中搜素文件,病执行制定的操作. 一.命令格式 find pathname -options[-print -exec -ok] 二.命令功能 用于在文件树种查找文件, ...

  5. Linux系列之查找命令

    前言 Linux 有四个常用的查找命令:locate.whereis.which 和 find.本文介绍它们的区别和简单用法. locate命令 这个命令将检查你的整个文件系统,并找到该关键词的每一次 ...

  6. Linux系列之比较命令

    前言 Linux中有两个比较命令,它们分别是comm和diff,在比较文本文件的版本时通常很有用.本文介绍它们的区别和简单用法. comm命令 该命令对两个文本文件进行比较,并显示每个文件独有的行和它 ...

  7. Linux系列之压缩命令

    前言 Linux 有三个常用的压缩命令:gzip.bzip2和 tar .本文介绍它们的区别和简单用法. 压缩文件 数据压缩是去除数据中冗余部分的过程,需要通过压缩算法完成.这些算法可分为两类: 无损 ...

  8. linux命令学习(8):mv命令

    版权声明更新:2017-05-12博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下面的mv命令. 2. ...

  9. Linux命令学习-mv命令

    Linux中,mv命令的全称是move,主要作用是移动文件或文件夹,类似于Windows下的剪切功能,同时还可以用于修改名字. 假设当前处于wintest用户的主目录,路径为 /home/wintes ...

随机推荐

  1. PB笔记之日期函数

    https://wenku.baidu.com/view/a0d5f16fb84ae45c3b358cc7.html this.object.yjzzrq[row]= RelativeDate(dat ...

  2. Qt4 和 Qt5 模块的分类

    Qt5 与 Qt4 其中的一个区别是底层架构进行了改变,Qt5 引入了更加详细的模块化的概念,将众多功能细分到几个模块之中,Qt4 则是一种粗略的划分.本文主要对 Qt5 和 Qt4的模块进行一个简单 ...

  3. Spring Cloud Alibaba学习笔记(8) - RocketMQ术语与概念

    Topic 一类消息的集合,RocketMQ的基本订阅单位 部署结构 Name Server Name Server 为 producer 和 consumer 提供路由信息. 相对来说,namese ...

  4. js按钮频繁提交解决方案:

    1.封装js: /// 函数节流 xhz.canRun = true; xhz.Throttling = function () { if (!xhz.canRun) { layer.msg('处理中 ...

  5. linux 基础指令

    df -h 查看磁盘空间 root@ubuntu:/etc# df -h Filesystem Size Used Avail Use% Mounted on udev 970M 0 970M 0% ...

  6. iOS 动画基础-显式动画

    摘要 显式动画 属性动画 CABasicAnimation *animation = [CABasicAnimation animation];         [self updateHandsAn ...

  7. 【转载】Asp.Net MVC网站提交富文本HTML标签内容抛出异常

    今天开发一个ASP.NET MVC网站时,有个页面使用到了FCKEditor富文本编辑器,通过Post方式提交内容时候抛出异常,仔细分析后得出应该是服务器阻止了带有HTML标签内容的提交操作,ASP. ...

  8. centos+docker+jenkins

    1.直接运行jenkins镜像,无该镜像会直接下载 docker run -p 8080:8080 -p 50000:50000 -d -v /home/jenkins-home-docker:/va ...

  9. JavaScript内置一些方法的实现原理--Object.freeze()、instanceof

    const定义的常量,一般是不能修改的. 比如: const TIME_OUT = 10000; 但是当值为引用类型值时,还是可以操作对象,扩展或修改对象属性.方法等等. 以下演示代码的操作是不会报错 ...

  10. 宽字节 多字节 mbstowcs wcstombs

    函数 size_t wcstombs(char *dest, const wchar_t *src, size_t n); //wide-character to a multibyte n:被写入到 ...