移动文件/目录

mv命令来自英文单词move的缩写,中文译为“移动”,其功能与英文含义相同,能够对文件进行剪切和重命名操作。

当目标文件/目录存在的时候,会进行覆盖

语法:mv [option] 源文件 目标文件

  • -f:强制覆盖(默认)
  • -i:覆盖目标文件前会询问用户 y/n
  • -n:不覆盖已有文件
  • -u:当源文件比目标文件更新时,才会执行
  • -b:目标文件/目录存在时,执行覆盖前,会为被覆盖的文件/目录创建副本
  • -v:显示详细的执行过程
ubuntu@R7000:~/shell_study/mv$ ls
demo
ubuntu@R7000:~/shell_study/mv$ mv demo test
ubuntu@R7000:~/shell_study/mv$ ls

强制覆盖(默认)

ubuntu@R7000:~/shell_study/mv$ ls
demo1 demo2
ubuntu@R7000:~/shell_study/mv$ mv demo1 demo2
ubuntu@R7000:~/shell_study/mv$ ls
demo2

询问是否覆盖

ubuntu@R7000:~/shell_study/mv$ ls
demo1 demo2
ubuntu@R7000:~/shell_study/mv$ mv -i demo1 demo2
mv: overwrite 'demo2'? n
ubuntu@R7000:~/shell_study/mv$ ls
demo1 demo2
ubuntu@R7000:~/shell_study/mv$

创建备份,demo2~就是备份文件

ubuntu@R7000:~/shell_study/mv$ ls
demo1 demo2
ubuntu@R7000:~/shell_study/mv$ mv -b demo1 demo2
ubuntu@R7000:~/shell_study/mv$ ls
demo2 demo2~