linux中mv命令使用詳解
mv命令是move的縮寫,可以用來移動文件或者將文件改名(move (rename) files),是Linux系統下常用的命令,經常用來備份文件或者目錄。
1.命令格式:
mv [選項] 源文件或目錄 目標文件或目錄
2.命令功能:
視mv命令中第二個參數類型的不同(是目標文件還是目標目錄),mv命令將文件重命名或將其移至一個新的目錄中。當第二個參數類型是文件時,mv命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標文件名。當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv命令將各參數指定的源文件均移至目標目錄中。在跨文件系統移動文件時,mv先拷貝,再將原有文件刪除,而鏈至該文件的鏈接也將丟失。
3.命令參數:
-b :若需覆蓋文件,則覆蓋前先行備份。
-f :force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋;
-i :若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!
-u :若目標文件已經存在,且 source 比較新,才會更新(update)
-t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目標目錄,該選項適用於移動多個源文件到一個目錄的情況,此時目標目錄在前,源文件在后。
4.命令實例:
實例一:文件改名
命令:
mv test.log test1.txt
實例二:移動文件
命令:
mv test1.txt test3
將test1.txt文件移到目錄test3中
實例三:將文件log1.txt,log2.txt,log3.txt移動到目錄test3中。
命令:
mv log1.txt log2.txt log3.txt test3
------------------------
mv 操作文件時是移動並且重命名。
目標目錄與原目錄一致,指定了新文件名,效果就是僅僅重命名。
mv /home/ffxhd/a.txt /home/ffxhd/b.txt
目標目錄與原目錄不一致,沒有指定新文件名,效果就是僅僅移動。
mv /home/ffxhd/a.txt /home/ffxhd/test/ 或者 mv /home/ffxhd/a.txt /home/ffxhd/test
目標目錄與原目錄一致, 指定了新文件名,效果就是:移動 + 重命名。
mv /home/ffxhd/a.txt /home/ffxhd/test/c.txt