mv (Unix)
外觀
mv(英語:move)是類Unix操作系統中移動單個或多個文件或目錄的命令。一般在移動操作之後,原來的文件或目錄不能再次訪問。移動後的文件名可以與原來相同(只要不與原文件在相同目錄中),也可以不同。當需要移動的文件和新文件位於同一文件系統上時,mv命令只是將原始文件重命名來達到移動的效果。操作要求擁有需要被修改目錄的寫入權限。
與已存在文件的衝突
[編輯]當文件將被移動時,若目標目錄含有與原始文件同名的文件,則目標文件將被刪除。如果已存在的目標文件並沒有寫權限,但它的所在目錄擁有寫權限,則mv命令在移動前請求用戶確認操作(當mv在終端中執行時)。但是使用 -f (強制) 選項來移動時,mv命令會跳過用戶確認環節而直接執行移動。
移動行為
[編輯]選項
[編輯]大多數版本的mv命令支持以下選項:
- -h 幫助模式,顯示支持的附加選項。 使用man mv命令可以查看在你所使用的操作系統中mv命令支持的詳細參數選項。
- -i 交互模式,在將要覆蓋一個已存在文件之前在標準錯誤中輸出提示,若用戶回答以'Y'或'y'字母開頭,則覆蓋操作將繼續執行(覆蓋此選項之前的-f和-n選項)。
- -n 不覆蓋已存在的文件。(覆蓋此選項之前的-f和-i選項)。
- -f 強制模式,強制覆蓋目標文件(覆蓋此選項之前的-i和-n選項)。
- -v 詳述模式,在移動文件(或目錄)後列出它們的名字。
附加選項(可以使用命令 man mv 以查看詳情):
- -u 更新選項,也就是只在原始文件比目標文件新或目標文件不存在時執行移動。
- -b 備份選項,使用一個~作為後綴來備份已存在的目標文件。
示例
[編輯]將'myfile'重命名為'myoldfilename':
mv myfile myoldfilename
從當前目錄移動'myfile'到用戶家目錄:
mv myfile ~/myfile
將'myfile'移動到相對路徑位置'subdir/myfile':
mv myfile subdir/myfile
mv myfile subdir # 此命令与前一命令作用相同,但不指明目标文件的文件名(暗示使用相同的文件名)
將'myfile'移動到子目錄'subdir',並改名為'myfile2':
mv myfile subdir/myfile2
移動'be.03'文件到已掛載目錄'/mnt/bkup'的子目錄'bes'中(原文件將在移動完成後被刪除):
mv be.03 /mnt/bkup/bes
移動多個文件到'mydir'(這些文件是'afile' 'another' '/home/yourdir/yourfile'):
mv afile another /home/yourdir/yourfile mydir
將以'Jun'開頭的文件都移到'bkup/06'目錄中,並輸出被移動文件的詳細清單:
mv -v Jun* bkup/06
查看關於mv命令的簡單幫助,包括命令語法:
mv --help
查看mv命令的手冊頁:
man mv