主頁 > 知識庫 > Linux中的文件與目錄操作利器mv命令使用解析

Linux中的文件與目錄操作利器mv命令使用解析

熱門標簽:辦理400電話怎么申請 高德地圖標注技術(shù) 如何在地圖標注多個位置 滴滴洗衣店地圖標注 大眾點評公寓式酒店地圖標注 微信地圖標注在哪 天地圖標注線 靈圖uu電子服務區(qū)地圖標注 慶陽便宜外呼系統(tǒng)報價

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

用法:mv [選項]... [-T] 源文件 目標文件
 或:mv [選項]... 源文件... 目錄
 或:mv [選項]... -t 目錄 源文件...
將源文件重命名為目標文件,或?qū)⒃次募苿又林付夸洝?/p>

長選項必須使用的參數(shù)對于短選項時也是必需使用的。
      --backup[=CONTROL]       為每個已存在的目標文件創(chuàng)建備份
  -b                           類似--backup 但不接受參數(shù)
  -f, --force                  覆蓋前不詢問
  -i, --interactive            覆蓋前詢問
  -n, --no-clobber             不覆蓋已存在文件
如果您指定了-i、-f、-n 中的多個,僅最后一個生效。
      --strip-trailing-slashes  去掉每個源文件參數(shù)尾部的斜線
  -S, --suffix=SUFFIX           替換常用的備份文件后綴
  -t, --target-directory=DIRECTORY      將所有參數(shù)指定的源文件或目錄
                                        移動至 指定目錄
  -T, --no-target-directory     將目標文件視作普通文件處理
  -u, --update                  只在源文件文件比目標文件新,或目標文件
                                不存在時才進行移動
  -v, --verbose         詳細顯示進行的步驟
      --help            顯示此幫助信息并退出
      --version         顯示版本信息并退出

備份文件的后綴為"~",除非以--suffix 選項或是SIMPLE_BACKUP_SUFFIX
環(huán)境變量指定。版本控制的方式可通過--backup 選項或VERSION_CONTROL 環(huán)境
變量來選擇。以下是可用的變量值:

  none, off       不進行備份(即使使用了--backup 選項)
  numbered, t     備份文件加上數(shù)字進行排序
  existing, nil   若有數(shù)字的備份文件已經(jīng)存在則使用數(shù)字,否則使用普通方式備份
  simple, never   永遠使用普通方式備份

使用示例

1.移動文件

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

復制代碼
代碼如下:

$ mv file_1.txt /home/pungki/office

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

2.移動多個文件

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

復制代碼
代碼如下:

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

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

復制代碼
代碼如下:

$ mv *.txt /home/pungki/office

3.移動目錄

不同于復制命令,用 mv 命令移動目錄相當直接。移動目錄你可以使用不帶選項的 mv 命令??聪旅娴慕貓D就一目了然了。

4.重命名文件或目錄

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

假定我們當前所在目錄為/home/pungki/Documents,而我們想將file1.txt重命名為file2.txt。那么命令應該如下:

復制代碼
代碼如下:

$ mv file_1.txt file_2.txt

如果是絕對路徑,它應該像下面這樣:

復制代碼
代碼如下:

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

5. 重命名目錄

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

復制代碼
代碼如下:

$ mv directory_1/ directory_2/

6. 打印移動信息

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

復制代碼
代碼如下:

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

該方法同樣適用于目錄。

7. 使用交互模式

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

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

復制代碼
代碼如下:

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

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

8. 使用更新選項

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

假如 file1.txt 和 file2.txt有如下特點:

復制代碼
代碼如下:

File_1.txt has 84 bytes file size and it last modified time is 12:00
File_2.txt has 0 bytes file size and it last modified time is 11:59

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

我們用下面的命令將file1.txt 和file2.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

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

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

復制代碼
代碼如下:

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

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

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

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

復制代碼
代碼如下:

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

標簽:玉樹 孝感 九江 優(yōu)質(zhì)穩(wěn)定 海東 臺州 哈密 昌都

巨人網(wǎng)絡通訊聲明:本文標題《Linux中的文件與目錄操作利器mv命令使用解析》,本文關(guān)鍵詞  Linux,中的,文件,與,目錄,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux中的文件與目錄操作利器mv命令使用解析》相關(guān)的同類信息!
  • 本頁收集關(guān)于Linux中的文件與目錄操作利器mv命令使用解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章