linux ---- mv

来源:互联网 发布:ubuntu 自动挂载硬盘 编辑:程序博客网 时间:2024/06/12 01:20

功能:移动文件或将文件改名,用来备份文件或目录。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

1.格式:mv [选项] 源文件或目录  目标文件或目录

2.命令参数:

-b :若需覆盖文件,则覆盖前先行备份。

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

-u :若目标文件已经存在,且 source 比较新,才会更新(update)

-t  : –target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

3.常用范例:

           1)mv test.log test1.txt     (文件改名,将文件test.log重命名为test1.txt)

            2)mv test1.txt test2     (将test1.txt文件移到目录test2中)

            3)mv log1.txt log2.txt log3.txt test3   (将log1.txt ,log2.txt, log3.txt 三个文件移到 test3目录中去)

            4)mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt   (将三个文件移动到test4目录中去)

            5)mv -i log1.txt  log2.txt (将log1.txt 改名为log2.txt 如果log2.txt 已经存在,则询问是否覆盖)

            6)mv -f log1.txt  log2.txt (将log1.txt 改名为log2.txt 如果log2.txt 已经存在也直接盖掉)

            7)mv dir1 dir2   (如果目录dir2不存在,将目录dir1改名为dir2;否则,将dir1移动到dir2中)

            8)mv * ../  (移动当前文件夹的所有文件到上一级目录)

            9)mv test3/*.txt test5 (把当前目录的一个子目录里的文件移动到另一个子目录里)

            10)mv log1.txt -b log2.txt    (文件被覆盖前做简单备份,前面加参数-b)

   注:

           -b 不接受参数,mv会去读取环境变量VERSION_CONTROL来作为备份策略。

           –backup该选项指定如果目标文件存在时的动作,共有四种备份策略:

                       1)CONTROL=none或off : 不备份。

                      2)CONTROL=numbered或t:数字编号的备份

                      3)CONTROL=existing或nil:如果存在以数字编号的备份,则继续编号备份m+1…n:

                        执行mv操作前已存在以数字编号的文件log2.txt.~1~,那么再次执行将产生log2.txt~2~,以次类推。如果之前没有   以数字编号的文件,则使用下面讲到的简单备份。

                      4)CONTROL=simple或never:使用简单备份:在被覆盖前进行了简单备份,简单备份只能有一份,再次被覆盖时,简单备份也会被覆盖。






0 0
原创粉丝点击