Linux

為什麼移動文件與重命名文件相同?

  • March 19, 2021

我聽說過一段時間,對於 Linux 中的 mv 工具,移動文件與重命名文件是一樣的。這是最近引起我興趣的評論

“在一個文件系統上,重命名和移動是完全一樣的;“移動”只是重命名目錄條目的完整路徑(即說明其父目錄的部分),而不僅僅是目錄條目的基本名稱(最後一個斜杠之後的部分)。它是通過系統呼叫 rename(2) 完成的;像 mv 這樣的工具會測試是否可以使用它,並且只有當它不回退到複製和刪除時。”

我想知道,重命名文件如何移動文件?我認為通過刪除舊父目錄中的條目並在新父目錄中創建一個條目來移動文件。我不明白這與重命名文件有什麼關係。

我認為通過刪除舊父目錄中的條目並在新父目錄中創建一個條目來移動文件。我不明白這與重命名文件有什麼關係。

同一個過程的兩個詞。在英語中,move 通常意味著文件具有相同的名稱,但在不同的目錄中,而 rename 意味著它在同一目錄中,並被賦予不同的名稱。作業系統不關心這種區別。無論哪種方式,都會刪除一個目錄條目,然後添加另一個。

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