ln 命令的使用

2021-09-02 09:37:30 字數 1123 閱讀 8814

寫道

n 這是linux中乙個非常重要命令。它的功能是為某乙個檔案在另外乙個位置建立乙個同不的鏈結,這個命令最常用的引數是-s,具體用法是:ln -s 原始檔 目標檔案。

當我們需要在不同的目錄,用到相同的檔案時,我們不需要在每乙個需要的目錄下都放乙個必須相同的檔案,我們只要在某個固定的目錄,放上該檔案,然後在其它的目錄下用ln命令鏈結(link)它就可以,不必重複的占用磁碟空間。例如:ln -s /bin/less /usr/local/bin/less

-s 是代號(symbolic)的意思。

這裡有兩點要注意:

第一,ln命令會保持每一處鏈結檔案的同步性,也就是說,不論你改動了哪一處,其它的檔案都會發生相同的變化;

第二,ln的鏈結又分為符號鏈結和硬鏈結兩種,符號鏈結就是ln -s ** **,它只會在你選定的位置上生成乙個檔案的映象,不會占用磁碟空間,硬鏈結ln ** **,沒有引數-s, 它會在你選定的位置上生成乙個和原始檔大小相同的檔案,無論是符號鏈結還是硬鏈結,檔案都保持同步變化。

如果你用ls察看乙個目錄時,發現有的檔案後面有乙個@的符號,那就是乙個用ln命令生成的檔案,用ls -l命令去察看,就可以看到顯示的link的路徑了。

硬鏈結與符號鏈結的區別在於硬鏈結與原來的檔案有相同的i-node即它們是無差別的指向乙個儲存資料的空間的索引.

硬鏈結產生的檔案與之前的檔名具有相同的意義,而且,由於都是無差別的指向同乙個儲存空間,所以對硬鏈結產生的檔案進行的操作,實際上都是對於那乙個儲存空間進行的操作。

而且,當乙個儲存空間,具有幾個硬鏈結時,刪除其中的乙個,並不會對儲存空間進行操作,所以其它的硬鏈結不會受到影響。

此種方式,類似於c語言裡的指標,當乙個儲存空間裡面有幾個指標指向它時,刪除其中的乙個指標並不會帶來儲存空間被**的操作。

而符號鏈結可以理解為指向原來的檔案的索引的索引.它與原來的檔案是兩個不同的檔案.所以這樣的話假如存在三個檔案的話,a是原檔案,b是a的硬鏈結,而c 是a 的符號鏈結.剛不管是那個檔案或者目錄的內容改變都會使得其它的檔案的內容改變.對於原檔案的刪除,則c將變的不可用,而對b卻沒有任何的影響.b,c的刪除不會對任何檔案有影響.

注:1. 對於ln命令預設是建立硬鏈結的.

2. -s不是soft(軟)的意思,而是symbolic(符號)的意思,因此應該是符號鏈結。

ln命令的使用

ln 的功能 是為某乙個檔案在另外乙個位置建立乙個同不的鏈結,這個命令最常用的引數是 s,具體用法是 ln s 原始檔 目標檔案。應用場景 當我們需要在不同的目錄,用到相同的檔案時,我們不需要在每乙個需要的目錄下都放乙個必須相同的檔案,我們只要在某個固定的目錄,放上該檔案,然後在其它的目錄下用ln命...

ln 命令的使用

ln 這是linux中乙個非常重要命令。它的功能是為某乙個檔案在另外乙個位置建立乙個同不的鏈結,這個命令最常用的引數是 s,具體用法是 ln s 原始檔 目標檔案。當我們需要在不同的目錄,用到相同的檔案時,我們不需要在每乙個需要的目錄下都放乙個必須相同的檔案,我們只要在某個固定的目錄,放上該檔案,然...

ln命令的使用

ln命令是linux系統中的乙個很重要的命令,使用ln命令可以方便我們對於檔案的管理備份。這個命令的功能是為某乙個檔案在另外乙個位置上建立乙個不同的鏈結。ln鏈結分為兩種,一種是硬連線,一種是軟連線。硬連線硬連線的功能就是為同一件檔案建立多個訪問路徑。linux磁碟上的所有檔案都有乙個索引節點號 i...