rock formation

Linux ln 指令:建立硬連結與軟連結的使用方法

Linux ln 指令:建立硬連結與軟連結的使用方法

在Linux系統中,使用ln指令可以建立硬連結和軟連結,這些連結可以用來指向其他檔案或目錄。在本文中,我們將介紹如何使用ln指令以及它們的一些特點和使用方法。

  1. 建立硬連結

硬連結是使用相同inode的連結檔案。ln指令的預設行為就是建立硬連結。以下是建立硬連結的範例命令:

ln test.txt test_hardlink.txt

這樣就會建立一個名為test_hardlink.txt的硬連結檔案,它指向test.txt這個檔案。建立了硬連結之後,可以使用ls命令查看inode:

ls -i test.txt test_hardlink.txt

輸出結果顯示兩個檔案具有相同的inode:

787682 test_hardlink.txt  787682 test.txt
  1. 建立軟連結

軟連結(也稱為符號連結)則是靠著絕對路徑或相對路徑來指向目標檔案的連結檔。要建立軟連結,可以在ln指令中加上”-s”參數。以下是建立軟連結的範例命令:

ln -s test.txt test_softlink.txt

這樣就會建立一個名為test_softlink.txt的軟連結檔案,它指向test.txt這個檔案。同樣地,我們可以使用ls命令查看inode:

ls -i test.txt test_softlink.txt

輸出結果顯示軟連結的inode與原始檔案不相同:

792852 test_softlink.txt  787682 test.txt
  1. 強制覆蓋舊檔

預設情況下,如果目標連結檔案已經存在,ln在建立連結檔案時會出現錯誤。為了強制覆蓋舊檔,可以加上”-f”參數。以下是強制覆蓋舊檔的範例命令:

ln -f -s test.txt test_softlink.txt

這樣就會強制覆蓋名為test_softlink.txt的軟連結檔案。

  1. 自動備份舊檔

除了強制覆蓋舊檔之外,ln指令還提供了自動備份舊檔的功能。使用”-b”參數可以自動將舊檔備份起來,然後建立新的連結檔。以下是自動備份舊檔的範例命令:

ln -b -s test.txt test_softlink.txt

ln指令會將原本的檔案名稱後方加上”~”作為備份檔的檔名。使用ls命令查看備份檔案:

ls -lart test_softlink.txt*

輸出結果顯示備份檔案的檔名:

lrwxrwxrwx 1 gtwang gtwang 8  9月 20 11:21 test_softlink.txt~ -> test.txt
lrwxrwxrwx 1 gtwang gtwang 8  9月 20 11:22 test_softlink.txt -> test.txt

如果要更改備份檔名的結尾名稱,可以使用”-S”參數指定新的名稱。以下是更改備份檔名的範例命令:

ln -b -S ".backup" -s test.txt test_softlink.txt

這樣ln指令就會使用原本的檔案名稱加上”.backup”作為備份檔案名稱。

  1. 路徑

在建立連結檔案時,可以使用相對路徑或絕對路徑。例如:

ln -s ../source/test.txt test.txt
ln -s /home/gtwang/source/test.txt test.txt

軟連結是直接靠著路徑來指向目標檔案的,所以對於軟連結來說,使用相對路徑與絕對路徑所建立的連結檔案效果會有不同。在搬移軟連結檔案時,以絕對路徑所建立的連結檔案仍然會指向相同的位置,而以相對路徑所建立的連結檔案,其指向的位置會隨著連結檔案的位置而變動。

總結

本文介紹了在Linux中使用ln指令建立硬連結和軟連結的方法。硬連結使用相同的inode,而軟連結則使用路徑來指向目標檔案。另外,我們還探討了強制覆蓋舊檔和自動備份舊檔的選項,以及使用相對路徑和絕對路徑建立連結檔案的差異。這些技巧可以幫助您更好地管理檔案和目錄之間的連結。

Similar Posts

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *