首頁 > 檔案與目錄管理 > link

link: 為檔案建立硬連結

`link` 命令用於為現有檔案建立硬連結。硬連結與原始檔案共享相同的 inode,充當檔案系統中指向相同資料的另一個名稱。即使原始檔案被刪除,只要硬連結仍然存在,資料就會保留。

概述

`link` 命令使用指定的兩個檔案路徑來建立硬連結。第一個參數是現有檔案的路徑,第二個參數是將要建立的新硬連結的路徑。此命令與 `ln` 命令的硬連結功能類似,但它不提供額外的選項,僅提供硬連結建立功能。

主要特點

  • 為現有檔案建立硬連結
  • 與原始檔案共享相同的 inode
  • 僅在同一檔案系統內運作
  • 無法為目錄建立硬連結

使用範例

以下是使用 `link` 命令的幾個範例。

建立基本硬連結

echo "Hello, World!" > original.txt
link original.txt hardlink.txt
ls -li original.txt hardlink.txt

為檔案 `original.txt` 建立一個名為 `hardlink.txt` 的硬連結。

刪除原始檔案後檢查連結

echo "This is a test." > file_to_link.txt
link file_to_link.txt linked_file.txt
rm file_to_link.txt
cat linked_file.txt

顯示即使刪除了原始檔案,仍然可以透過硬連結存取資料。

提示與注意事項

使用 `link` 命令時的實用提示和注意事項。

理解硬連結

  • 共享 inode: 硬連結與原始檔案具有相同的 inode 編號。這表示兩個名稱指向相同的實際資料。檔案系統會追蹤 inode 的引用計數(連結計數),直到計數變為 0 為止,實際資料才會被刪除。
  • 檔案系統界限: 硬連結只能在同一檔案系統內建立。您無法為不同分割區或掛載的磁碟上的檔案建立硬連結。在此情況下,您應該使用符號連結 (symlink)。
  • 無法連結目錄: `link` 命令無法為目錄建立硬連結。目錄的硬連結通常不被允許,因為它們可能會損害檔案系統的完整性。

`link` 與 `ln` 的區別

  • 功能: `link` 命令僅建立硬連結。而 `ln` 命令可以使用 `-s` 選項建立符號連結,並提供更多選項,例如 `-f`(強制覆蓋)、`-v`(詳細輸出)。
  • 易用性: 在大多數情況下,`ln` 命令更靈活且方便,因此更常用。`link` 是一個更基本的工具,僅提供 `ln` 的硬連結建立功能。

相同類別命令