Mv

為什麼在“mv”期間源分區上的可用空間沒有變化?

  • February 14, 2015

我正在執行mv將一個目錄(包含許多文件)從一個分區移動到另一個分區。在mv一個一個地移動目錄中的單個文件時,我注意到源分區的可用空間大小沒有改變,而目標分區的可用空間大小正在減少。

為什麼它以這種方式工作,而不是源分區和目標分區的可用空間大小之和保持不變?

正如 POSIX 定義的那樣,mv會將源文件複製到目標路徑,如果沒有出錯,則應刪除源文件:

  1. 以 source_file 為根的文件層次結構應複製為以目標路徑為根的文件層次結構
  2. 應刪除以 source_file 為根的文件層次結構。如果由於任何原因失敗,mv 將向標準錯誤寫入診斷消息,不再對目前 source_file 執行任何操作,並繼續處理任何剩餘的 source_files。

如果您在同一個文件系統上移動,您只需將條目從文件系統中的一個位置移動到另一個位置。

如果在移動過程中發生錯誤,它保證您不會失去源文件。

引用自:https://unix.stackexchange.com/questions/184797