学习啦>学习电脑>操作系统>Linux教程>

linux中的mv命令的详细解释

时间: 佳洲1085 分享

  linxu下的mv命令是一个常用命令,可以为文件或者目录重命名,下面由学习啦小编为大家整理了linux的mv命令的详细解释的相关知识,希望对大家有帮助!

  一、linux中的mv命令的详细解释

  Linux mv命令用来为文件或目录改名、或将文件或目录移入其它位置。

  语法

  mv [options] source dest

  mv [options] source... directory

  参数说明:

  -i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;

  -f: 在mv操作要覆盖某已有的目标文件时不给任何指示;

  mv参数设置与运行结果

命令格式 运行结果
mv 文件名 文件名 将源文件名改为目标文件名
mv 文件名 目录名 将文件移动到目标目录
mv 目录名 目录名 目标目录已存在,将源目录
移动到目标目录;目标
目录不存在则改名
mv 目录名 文件名 出错

  二、Linux中的mv命令使用实例——文件操作

  实例一:文件改名

  命令:

  mv test.log test1.txt

  输出:

  复制代码

  代码如下:

  [root@localhost test]# ll

  总计 20drwxr-xr-x 6 root root 4096 10-27 01:58 scf

  drwxrwxrwx 2 root root 4096 10-25 17:46 test3

  drwxr-xr-x 2 root root 4096 10-25 17:56 test4

  drwxr-xr-x 3 root root 4096 10-25 17:56 test5

  -rw-r--r-- 1 root root 16 10-28 06:04 test.log

  [root@localhost test]# mv test.log test1.txt

  [root@localhost test]# ll

  总计 20drwxr-xr-x 6 root root 4096 10-27 01:58 scf

  -rw-r--r-- 1 root root 16 10-28 06:04 test1.txt

  drwxrwxrwx 2 root root 4096 10-25 17:46 test3

  drwxr-xr-x 2 root root 4096 10-25 17:56 test4

  drwxr-xr-x 3 root root 4096 10-25 17:56 test5

  说明:

  将文件test.log重命名为test1.txt

  实例二:移动文件

  命令:

  mv test1.txt test3

  输出:

  复制代码

  代码如下:

  [root@localhost test]# ll

  总计 20drwxr-xr-x 6 root root 4096 10-27 01:58 scf

  -rw-r--r-- 1 root root 29 10-28 06:05 test1.txt

  drwxrwxrwx 2 root root 4096 10-25 17:46 test3

  drwxr-xr-x 2 root root 4096 10-25 17:56 test4

  drwxr-xr-x 3 root root 4096 10-25 17:56 test5

  [root@localhost test]# mv test1.txt test3

  [root@localhost test]# ll

  总计 16drwxr-xr-x 6 root root 4096 10-27 01:58 scf

  drwxrwxrwx 2 root root 4096 10-28 06:09 test3

  drwxr-xr-x 2 root root 4096 10-25 17:56 test4

  drwxr-xr-x 3 root root 4096 10-25 17:56 test5

  [root@localhost test]# cd test3

  [root@localhost test3]# ll

  总计 4

  -rw-r--r-- 1 root root 29 10-28 06:05 test1.txt

  [root@localhost test3]#

  说明:

  将test1.txt文件移到目录test3中

  实例三:将文件log1.txt,log2.txt,log3.txt移动到目录test3中。

  命令:

  mv log1.txt log2.txt log3.txt test3

  mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt

  输出:

  复制代码

  代码如下:

  [root@localhost test]# ll

  总计 28

  -rw-r--r-- 1 root root 8 10-28 06:15 log1.txt

  -rw-r--r-- 1 root root 12 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  drwxrwxrwx 2 root root 4096 10-28 06:09 test3

  [root@localhost test]# mv log1.txt log2.txt log3.txt test3

  [root@localhost test]# ll

  总计 16drwxrwxrwx 2 root root 4096 10-28 06:18 test3

  [root@localhost test]# cd test3/

  [root@localhost test3]# ll

  总计 16

  -rw-r--r-- 1 root root 8 10-28 06:15 log1.txt

  -rw-r--r-- 1 root root 12 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  -rw-r--r-- 1 root root 29 10-28 06:05 test1.txt

  [root@localhost test3]#

  [root@localhost test3]# ll

  总计 20

  -rw-r--r-- 1 root root 8 10-28 06:15 log1.txt

  -rw-r--r-- 1 root root 12 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  drwxr-xr-x 2 root root 4096 10-28 06:21 logs

  -rw-r--r-- 1 root root 29 10-28 06:05 test1.txt

  [root@localhost test3]# mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt

  [root@localhost test3]# cd ..

  [root@localhost test]# cd test4/

  [root@localhost test4]# ll

  总计 12

  -rw-r--r-- 1 root root 8 10-28 06:15 log1.txt

  -rw-r--r-- 1 root root 12 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  [root@localhost test4]#

  说明:

  mv log1.txt log2.txt log3.txt test3 命令将log1.txt ,log2.txt, log3.txt 三个文件移到 test3目录中去,mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt 命令又将三个文件移动到test4目录中去

  实例四:将文件file1改名为file2,如果file2已经存在,则询问是否覆盖

  命令:

  mv -i log1.txt log2.txt

  输出:

  复制代码

  代码如下:

  [root@localhost test4]# ll

  总计 12

  -rw-r--r-- 1 root root 8 10-28 06:15 log1.txt

  -rw-r--r-- 1 root root 12 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  [root@localhost test4]# cat log1.txt

  odfdfs

  [root@localhost test4]# cat log2.txt

  ererwerwer

  [root@localhost test4]# mv -i log1.txt log2.txt

  mv:是否覆盖“log2.txt”? y

  [root@localhost test4]# cat log2.txt

  odfdfs

  [root@localhost test4]#

  实例五:将文件file1改名为file2,即使file2存在,也是直接覆盖掉。

  命令:

  mv -f log3.txt log2.txt

  输出:

  复制代码

  代码如下:

  [root@localhost test4]# ll

  总计 8

  -rw-r--r-- 1 root root 8 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  [root@localhost test4]# cat log2.txt

  odfdfs

  [root@localhost test4]# cat log3

  cat: log3: 没有那个文件或目录

  [root@localhost test4]# ll

  总计 8

  -rw-r--r-- 1 root root 8 10-28 06:15 log2.txt

  -rw-r--r-- 1 root root 13 10-28 06:16 log3.txt

  [root@localhost test4]# cat log2.txt

  odfdfs

  [root@localhost test4]# cat log3.txt

  dfosdfsdfdss

  [root@localhost test4]# mv -f log3.txt log2.txt

  [root@localhost test4]# cat log2.txt

  dfosdfsdfdss

  [root@localhost test4]# ll

  总计 4

  -rw-r--r-- 1 root root 13 10-28 06:16 log2.txt

  [root@localhost test4]#

  说明:

  log3.txt的内容直接覆盖了log2.txt内容,-f 这是个危险的选项,使用的时候一定要保持头脑清晰,一般情况下最好不用加上它。

3635566