1、命令简介
mv(Move file)将源文件重命名为目标文件,或将源文件移动至指定目录。。
2、用法
mv [选项]... [-T] 源文件 目标文件 或:mv [选项]... 源文件... 目录 或:mv [选项]... -t 目录 源文件...
3、选项
--backup[=CONTROL] 为每个已存在的目标文件创建备份
-b 类似--backup 但不接受参数
-f, --force 覆盖前不询问
-i, --interactive 覆盖前询问
-n, –nechoo-clobber 不覆盖已存在文件 如果您指定了-i、-f、-n 中的多个,仅最后一个生效。
--strip-trailing-slashes 去掉每个源文件参数尾部的斜线
-S, --suffix=SUFFIX 替换常用的备份文件后缀
-t, --target-directory=DIRECTORY 将所有参数指定的源文件或目录 移动至 指定目录
-T, --no-target-directory 将目标文件视作普通文件处理
-u, --update 只在源文件文件比目标文件新,或目标文件不存在时才进行移动
-v, --verbose 详细显示进行的步骤
4、实例
实例1:文件改名
[root@oracledb dir1]# mv a.txt b.txt
实例二:-v显示详细信息
[root@oracledb dir1]# mv -v b.txt a.txt "b.txt" -> "a.txt"
实例3:将单个文件移动至目录
[root@oracledb dir1]# mv -v a.txt dir2/
"a.txt" -> "dir2/a.txt"
[root@oracledb dir1]# mv -v a.txt dir2/ "a.txt" -> "dir2/a.txt"
实例3:将多个文件移动至目录
[root@oracledb dir1]# mv -v a.txt b.txt dir2/ "a.txt" -> "dir2/a.txt" "b.txt" -> "dir2/b.txt"
[root@oracledb dir1]# mv -vt dir2/ a.txt b.txt "a.txt" -> "dir2/a.txt" "b.txt" -> "dir2/b.txt"
实例4:将文件a.txt改名为b.txt,如果a.txt已经存在,则询问是否覆盖
[root@oracledb dir1]# mv -vi a.txt b.txt mv:是否覆盖"b.txt"? y "a.txt" -> "b.txt"
实例5:将文件a.txt改名为b.txt,即使b.txt存在,也是直接覆盖掉。
[root@oracledb dir1]# mv -fv a.txt b.txt "a.txt" -> "b.txt"
实例:6:重命名dir1为dir2(dir2不存在)
[root@oracledb dir1]# mv -v dir1 dir2 "dir1" -> "dir2"
实例7:将dir1移动到dir2中(dir2存在)。
[root@oracledb dir1]# mv -v dir1 dir2 "dir1" -> "dir2/dir1"
实例8:文件被覆盖前做简单备份,前面加参数-b
[root@oracledb dir1]# mv -vb a.txt b.txt "a.txt" -> "b.txt" (备份:"b.txt~") [root@oracledb dir1]# ls b.txt b.txt~
实例9:只在源文件比目标文件新时才移动
[root@oracledb dir1]# ll 总用量 0 -rw-r--r-- 1 root root 0 4月 16 20:48 a.txt -rw-r--r-- 1 root root 0 4月 16 20:43 b.txt [root@oracledb dir1]# mv -uv b.txt a.txt [root@oracledb dir1]# mv -uv a.txt b.txt "a.txt" -> "b.txt"