每天一个linux命令(7):mv

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"
实例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"

posted on 2016-04-16 17:45  小强斋太  阅读(1954)  评论(0编辑  收藏  举报

导航