1. 程式人生 > 實用技巧 >Linux命令 硬連結和符號連結

Linux命令 硬連結和符號連結

連結

建立連結的方式

  1. 建立硬連結
    ln file link
  2. 建立符號連結
    ln -s item link
    item 可以是檔案也可以是目錄

硬連結

  1. 檔名本身就是一個硬連結,當建立額外的硬連結就相當與給檔案又起了個名字


fun檔案的第2個欄位說明它有1個連結,檔案至少有一個連結。

  1. 硬連結和檔案本身沒什麼區別


這裡我們建立了一個硬連結fun-hard。使用ls -i選項可以看檔案的索引節點號,fun和fun-hard的索引節點號相同,證明二者是同一個檔案。

  1. 刪除任何一個硬連結不會刪除檔案本身,除非它是檔案的最後一個硬連結

符號連結

硬連結的不足:

  1. 不能引用不在同一磁碟分割槽的檔案
  2. 不能引用目錄

符號連結是一種特殊的檔案,它包含了指向目標檔案或目錄的文字指標。

  1. 符號連結類似於windows中的快捷方式,可以把它當作其指向的檔案使用

  1. 刪除檔案後,指向該檔案的符號連結依然存在,但是不指向任何檔案,變成壞連結

  1. 符號連結其實就是儲存了目標檔案的地址(絕對地址或者相對與連結的地址)


可以看到第五個欄位為6,這是符號連結的檔案長度,其實就是“../fun”。
注意這裡目標檔案的地址是相對於建立的符號連結的,而不是相對於當前路徑,因為這個地址是要儲存在符號連結對應的文字檔案的。
所以應該寫成“../fun”而不是“./fun”。