🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
mv命令是move的缩写---mv - move (rename) files 语法: SYNOPSIS mv [OPTION]... [-T] SOURCE DEST mv [OPTION]... SOURCE... DIRECTORY mv [OPTION]... -t DIRECTORY SOURCE... 功能: 可以用来移动文件或者将文件改名,是Linux系统下常用的命令,经常用来备份文件或者目录 选项: -b :若需覆盖文件,则覆盖前先行备份。 -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖; -i :若目标文件已经存在时,就会询问是否覆盖! -u :若目标文件已经存在,且 source 比较新,才会更新 -t :即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。 案例: 1)如果源是文件,目标文件不存在,会在目标目录里新建一个源文件同名的文件 [root@manager tmp]# mv issue.txt /app/ [root@manager tmp]# ll /app/issue.txt -rw-r--r--. 1 root root 0 Oct 11 13:56 /app/issue.txt 2)如果源是文件,目标文件存在,则会把源文件里的内容移动到目标文件中 [root@manager tmp]# echo 134abc > file_a.txt [root@manager tmp]# mv file_a.txt /app/file02.txt [root@manager tmp]# cat /app/file02.txt 134abc 3)如果源是目录,目标目录不存在,则在目标目录下新建一个源目录同名的文件夹 [root@manager tmp]# mv /tmp/aa /app/ [root@manager tmp]# ll /app/aa -d drwxr-xr-x. 2 root root 4096 Oct 19 13:04 /app/aa 4)如果源是目录,目标目录存在 [root@manager tmp]# mkdir aa [root@manager tmp]# cd aa/ [root@manager aa]# touch a.txt [root@manager aa]# touch b.txt [root@manager aa]# cd .. [root@manager tmp]# mv /tmp/aa /app/ mv: overwrite `/app/aa'? y mv: cannot move `/tmp/aa' to `/app/aa': Directory not empty [root@manager tmp]# ll /app/aa total 8 -rw-r--r--. 1 root root 783 Oct 19 13:03 fstab -rw-r--r--. 1 root root 47 Oct 19 13:04 issue [root@manager tmp]# mv /tmp/aa/ /app/aa/ [root@manager tmp]# ll /app/aa total 12 drwxr-xr-x. 2 root root 4096 Oct 19 13:05 aa -rw-r--r--. 1 root root 783 Oct 19 13:03 fstab -rw-r--r--. 1 root root 47 Oct 19 13:04 issue [root@manager tmp]# 5)如果源和目标在同一个目录下,则mv的作用就是重命名目录或文件 [root@manager tmp]# mv meminfo.txt mem.txt [root@manager tmp]# mv test/ test01/ [root@manager tmp]# ll -ld test01/ drwxrwsr-x. 2 root mygrp 4096 Oct 12 17:09 test01/ [root@manager tmp]# ll mem.txt -rw-r--r--. 1 root root 418880 Oct 19 13:08 mem.txt 6)如果源是文件,目标文件不是目录,而是一个普通文件,则会把源文件里的内容覆盖到目标文件 [root@manager tmp]# mv mem.txt /app/a01.txt