mv命令,move的缩写,顾名思义是移动文件的意思。其实就至关于剪切操做,而前面说的cp命令,就是复制粘贴,这两个有什么区别想必不用多说。安全
使用格式测试
mv 源文件 目标文件
个人根目录下有 a 目录和一个 readme.txt 文件,如今我要把readme.txt文件移动到 a目录里:spa
//查看a目录结构 tree a //结果 a └── b ├── c │ └── 123.txt └── test.txt
移动:code
mv readme.txt ./a
验证:blog
tree a //结果 a ├── b │ ├── c │ │ └── 123.txt │ └── test.txt └── readme.txt
此时,根目录下的 readme.txt文件也不见了,想一想剪切操做就明白了。it
mv 命令还能够用来重命名,这听起来很奇怪,移动操做跟重命名有什么关系,其实回想cp命令也不难理解了,在移动过程当中,改变名称,不改变位置,这样不就至关于重命名了。class
//进入a目录 cd a //将readme.txt重命名为demo.txt mv readme.txt demo.txt //tree . ├── b │ ├── c │ │ └── 123.txt │ └── test.txt └── demo.txt
如今假设一个场景,咱们在 a目录里,须要将 b目录里的 test.txt文件移动到 a目录下,并重命名为 demo.txt,咱们知道 a目录下已有了一个demo.txt文件,这样的操做会覆盖掉原有的 demo.txt文件,能够在本身的环境测试,个人环境默认就会有覆盖提示:test
mv b/test.txt ./demo.txt mv: overwrite ‘./demo.txt’?
为了安全性,应该都具有提示,mv 提供了一个选项 -i 能够保证每次覆盖前都提示,这跟 cp命令差同样。无论环境默认有没有提示,仍是尽可能加上 -i 吧:命名
mv -i b/test.txt ./demo.txt mv: overwrite ‘./demo.txt’? y tree . ├── b │ └── c │ └── 123.txt └── demo.txt