0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Linux的mv 指令移動文件和目錄命令

Linux愛好者 ? 2017-12-31 00:57 ? 次閱讀

熟悉了復制命令,下一個相關(guān)的命令就是 mv 命令。當你想要將文件從一個位置移動到另一個地方并且不想復制它,那么mv 命令是完成這個任務(wù)的首選。

初識 mv 命令

mv 命令是一個與cp類似的命令,但是它并非創(chuàng)建文件或目錄的復制品/副本。不管你在使用什么版本的Linux系統(tǒng),mv 都默認安裝在你的Linux系統(tǒng)上了。來看一下 mv 命令在日常操作中的一些例子。

1.移動文件

移動文件時需要注意的是文件的源地址和目標地址必須不同。這里有個例子,想要將file_1.txt文件從當前目錄移動到其它目錄,以/home/pungki/為例,語法應(yīng)該如下:

$ mv file_1.txt /home/pungki/office

01010140P-1.png

如我們所見,當我們移動 file_1.txt 文件時,先前目錄的 file_1.txt 就被刪除了。

2.移動多個文件

如果想一次移動多個文件,我們可以將他們放在一行并用空格分開。

$ mv file_2.txt file_3.txt file_4.txt /home/pungki/office

0101015442-2.png

如果你的文件有規(guī)律可循的話那么你就可以使用通配符。比如,為了移除所有以.txt為擴展名的文件,我們可以用下面的命令:

$ mv *.txt /home/pungki/office

0101012927-3.png

3.移動目錄

不同于復制命令,用 mv 命令移動目錄相當直接。移動目錄你可以使用不帶選項的 mv 命令。看下面的截圖就一目了然了。

01010115I-4.png

4.重命名文件或目錄

我們也用 mv 命令來重命名文件或目錄。不過目標位置和源位置必須相同才可以。然后文件名必須不同。

假定我們當前所在目錄為/home/pungki/Documents,而我們想將file_1.txt重命名為file_2.txt。那么命令應(yīng)該如下:

$ mv file_1.txt file_2.txt

如果是絕對路徑,它應(yīng)該像下面這樣:

$ mv /home/pungki/Documents/file_1.txt /home/pungki/Documents/file_2.txt

010101J62-5.png

5. 重命名目錄

上一段的規(guī)則同樣適用于目錄。請看這個例子:

$ mv directory_1/ directory_2/

0101011011-6.png

6. 打印移動信息

當你移動或重命名一大堆文件或目錄時,你可能會想在不去目標位置去查看的情況下知道你自己的命令是否成功地執(zhí)行了。這就要用到-v選項了。

$ mv -v *.txt /home/pungki/office

01010132G-7.png

該方法同樣適用于目錄。

0101016027-8.png

7. 使用交互模式

當你將文件移動到其它位置,而那個位置恰好有同樣的文件,這時 mv 命令會覆蓋掉原來的文件。對于mv的這一行為一般不會有什么提示。如果想產(chǎn)生一個關(guān)于覆蓋文件的提示,我們可以使用-i選項。(譯注:通常發(fā)行版會通過alias命令,將-i作為默認選項,所以會有提示。)

假設(shè)我們想將 file_1.txt 移動到 /home/pungki/office。同時,/home/pungki/office 目錄下已經(jīng)有file_1.txt文件了。

$ mv -i file_1.txt /home/pungki/office

01010124G-9.png

這個提示會讓我們知道目標位置處file_1.txt的存在。如果我們按y鍵,那么那個文件將會被刪除,否則不會。

8. 使用更新選項

-i 選項會提示我們關(guān)于覆蓋文件的提示,而 -u 則只在源文件比目標文件新時才執(zhí)行更新。讓我們看一看下面的例子:

010101O21-10.png

假如 file_1.txt 和 file_2.txt有如下特點:

File_1.txt has84bytes file size andit last modified time is12:00

File_2.txt has0bytes file size andit last modified time is11:59

我們想將它們移動到 /home/pungki/office 目錄下。但是目標地址已經(jīng)有file_1.txt和file_2.txt了。

我們用下面的命令將file_1.txt 和file_2.txt從當前目錄移動到/home/pungki/office

$ mv -uv *.txt /home/pungki/office

可以看到這些文件被移動了。能移動這些文件是因為它們最近的修改時間戳比 /home/pungki/office 目錄中的文件新。

9.不要覆蓋任何已存在的文件

如果-i選項詢問我們是否要覆蓋文件,那么 -n 選項將不會允許我們覆蓋任何已存在的文件。

繼續(xù)使用第8點中的例子,如果我們將-u 換成 -n同時加上-v選項,那么我們會看到?jīng)]有任何文件移動到了 /home/pungki/office 目錄下。

$ mv -vn *.txt /home/pungki/office

010101F63-11.png

10. 復制時創(chuàng)建備份

默認情況下,移動文件將會覆蓋已存在的目標文件。但是如果我們移動錯了文件而目標文件已經(jīng)被新的文件覆蓋了,這時應(yīng)該怎么辦才好呢?有沒有一種方法可以恢復之前的文件呢?答案是肯定的。我們可以用-b選項。該選項會在新文件覆蓋舊文件時將舊文件做備份。這里我們還以第8點為例。

$ mv -bv *.txt /home/pungki/office

如截圖中所見,在 /home/pungki/office 目錄下出現(xiàn)了名為file_1.txt~和file_2.txt~的文件。那個波浪符號(~)意味著這些文件是備份文件。從它們的屬性中我們可以看到,這些文件比file_1.txt和file_2.txt要舊。

11. 無條件覆蓋已經(jīng)存在的文件

(譯注:這一節(jié)是譯者補充的,原文遺漏了這個重要選項)

當你希望無論如何都覆蓋已經(jīng)存在的文件或目錄時,你可以使用 -f 選項。如果同時指定了 -f 選項和 -i 或 -n 選項,則 -f 選項會覆蓋它們——即不進行任何提示而覆蓋,所以,在使用此參數(shù)時,知道你在做什么。

$ mv -f *.txt /home/pungki/office

總結(jié)

移動文件和目錄命令是Linux系統(tǒng)的基本命令。通常你可以通過man mv 或者 mv –help顯示mv的手冊頁以了解更多詳細信息。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • MV
    MV
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    8787
  • linxu
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    2532

原文標題:Linux 移動或重命名文件/目錄-mv 的10個實用例子

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    如何在Linux使用rm刪除文件目錄

    rm命令用于刪除文件目錄。它是每個Linux用戶都應(yīng)該熟悉的基本命令之一。
    發(fā)表于 12-08 16:49 ?2456次閱讀

    Linux命令詳解之mv命令

    DIRECTORY SOURCE...參數(shù)說明:Linux mv命令 參數(shù)如下所示:-b : 若需覆蓋文件,則覆蓋前先行備份。 -f : force 強制的意思,如果目標
    發(fā)表于 08-27 13:50

    Linux文件的復制、刪除和移動命令

    Linux文件的復制、刪除和移動命令 Linux文件的復制、刪除和
    發(fā)表于 01-18 12:45 ?1233次閱讀

    Linux目錄的創(chuàng)建與刪除命令

    Linux目錄的創(chuàng)建與刪除命令 Linux目錄的創(chuàng)建與刪除命令  mkdir
    發(fā)表于 01-18 12:46 ?1291次閱讀

    Linux改變文件目錄的訪問權(quán)限命令

    Linux改變文件目錄的訪問權(quán)限命令 Linux改變文件
    發(fā)表于 01-18 12:46 ?1174次閱讀

    如何使用cp和rsync命令復制文件目錄

    復制文件目錄是在使用命令行時最常見的任務(wù)之一。在Linux,有兩個命令用于復制文件cp和rsy
    的頭像 發(fā)表于 12-07 17:39 ?6688次閱讀

    如何在Linux使用wc命令統(tǒng)計目錄文件

    盡管不是很經(jīng)常需要知道,但有時您需要找出指定目錄中有多少個文件。例如,Linux系統(tǒng)inodes用完,則需要查找哪個目錄包含成千上萬個文件
    的頭像 發(fā)表于 12-09 16:48 ?1695次閱讀

    Linux rename命令重命名多個文件目錄

    使用`mv`命令重命名多個文件目錄可能是一個乏味的過程,因為它涉及使用管道,循環(huán)等編寫復雜的命令。
    的頭像 發(fā)表于 12-09 17:41 ?2871次閱讀

    討論Linux mv命令的一些實際示例

    mv 命令的最基本用途是重命名文件。那么讓我們看看如何重命名當前目錄中的文件。
    的頭像 發(fā)表于 02-14 16:28 ?582次閱讀

    Linux文件目錄快速自動跳轉(zhuǎn)命令

    那些主要通過控制臺/終端使用 Linux 命令行的 Linux 用戶應(yīng)該感受到了 Linux 的真正力量。然而,對于新手來說,導航 Linux
    的頭像 發(fā)表于 05-06 10:16 ?855次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>文件</b><b class='flag-5'>目錄</b>快速自動跳轉(zhuǎn)<b class='flag-5'>命令</b>

    恒訊科技分析:如何在Linux上使用rm命令刪除文件目錄

    本指南展示了如何在Linux中使用rm命令行刪除文件、目錄和其他內(nèi)容?
    的頭像 發(fā)表于 06-09 17:02 ?1056次閱讀

    恒訊科技分析:如何使用cp命令Linux中復制目錄?

    復制目錄Linux中的一項基本任務(wù),它允許我們復制目錄、創(chuàng)建備份或在不同位置之間傳輸數(shù)據(jù)。在Linux中復制文件
    的頭像 發(fā)表于 06-26 17:14 ?610次閱讀

    linux系統(tǒng)基本操作命令

    Linux系統(tǒng)基本操作命令有很多,以下是一些常用的命令: ls :列出目錄內(nèi)容。 cd :改變當前目錄。 mkdir :創(chuàng)建
    的頭像 發(fā)表于 11-08 11:17 ?1525次閱讀

    linux刪除文件命令rm

    Linux系統(tǒng)中,可以使用rm命令來刪除文件目錄。該命令的功能是刪除一個目錄中的一個或多個
    的頭像 發(fā)表于 11-13 16:42 ?694次閱讀

    總結(jié)linux命令行的主要用法

    目錄操作、權(quán)限管理、進程管理等內(nèi)容。 1.常用命令 1.1 文件目錄操作 文件目錄
    的頭像 發(fā)表于 11-17 10:19 ?543次閱讀