mv 来自于move单词
在移动过程中,系统会自动判断移动对象和目标对象是文件还是文件夹,从而作出不同的动作
mv常用来更改文件名
命令格式
命令格式 | 运行结果 |
---|---|
mv 文件名 文件名 | 将源文件名改为目标文件名 |
mv 文件名 目录名 | 将文件移动到目标目录 |
mv 目录名 目录名 | 目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名 |
命令选项
选项 | 描述 |
---|---|
-b | 备份相同名字文件 |
-f | 强制覆盖 |
-i | 交互覆盖,如果重名会提示 |
-u | 只有在移动文件更新日期大于覆盖文件的时候才会覆盖 |
-v | 列出所有被移动文件 |
例子
假设有文件结构如下:
claroja@ubuntu:~$ tree test
test
├── a
│ └── c.txt
└── b
└── c.txt
2 directories, 2 files
移动文件夹到文件夹
claroja@ubuntu:~$ mv test/a test/b
claroja@ubuntu:~$ tree test
test
└── b
├── a
│ └── c.txt
└── c.txt
2 directories, 2 files
移动文件到文件夹
claroja@ubuntu:~$ mv test/a/c.txt test/b/
claroja@ubuntu:~$ tree test
test
├── a
└── b
└── c.txt
2 directories, 1 file
# 直接将b文件夹中的覆盖,并且没有提示,可以加上-i提示
claroja@ubuntu:~$ mv -i test/a/c.txt test/b/
mv: overwrite 'test/b/c.txt'? yes
移动文件到文件
claroja@ubuntu:~$ mv -v test/a/c.txt test/b/b.txt
'test/a/c.txt' -> 'test/b/b.txt'
claroja@ubuntu:~$ tree test
test
├── a
└── b
├── b.txt
└── c.txt
2 directories, 2 files
# 將a文件夹中的c.txt移动到b文件夹中,并重新命名为b.txt
参考文献:
http://www.runoob.com/linux/linux-comm-mv.html
http://www.cnblogs.com/MenAngel/p/5465162.html