ln命令介紹

文章作者:Tyan
博客:noahsnail.com | CSDN | 簡書

鏈接文件是Linux文件系統的一個優勢,它可以保存一份物理文件副本和多個虛擬副本。這種虛擬的副本稱為鏈接。鏈接是目錄中指向文件真實位置的占位符。Linux系統中有兩種鏈接:符號鏈接和硬鏈接。

1. ln -s

符號鏈接是實實在在的文件,它指向虛擬目錄結構中某個地方的另一個文件。兩個文件通過符號鏈接在一起,內容并不相同。要為一個文件創建一個符號鏈接,原始文件必須存在。ln -s命令用來創建符號鏈接。

# 命令形式:ls -s source_file_name link_filename

# 創建符號鏈接
$ ln -s test b

# b為鏈接文件,test為源文件,`->`符號表明該文件是一個鏈接文件,文件b的大小與test不一樣。
$ ls -l
total 8
-rw-r--r--  1 ***  staff  0 11 13 13:52 a
lrwxr-xr-x  1 ***  staff  4 11 13 15:11 b -> test
-rw-r--r--  1 ***  staff  0 11 13 13:13 test

2. ln

硬連接會創建獨立的虛擬文件,其中包含了原始文件的位置和信息,但它們從根本上是一個文件,引用硬連接文件就等同于引用了源文件。創建硬連接時源文件也必須存在,不過ln命令不需要加上-s參數。

# 命令形式:ls source_file_name link_filename

# 創建硬連接
$ ln test c

# c為硬鏈接文件
$ ls -l
total 8
-rw-r--r--  1 ***  staff  0 11 13 13:52 a
lrwxr-xr-x  1 ***  staff  4 11 13 15:11 b -> test
-rw-r--r--  2 ***  staff  0 11 13 13:13 c
-rw-r--r--  2 ***  staff  0 11 13 13:13 test

# c和test的inode編碼是一樣的,且它們的文件大小也是一樣的。
$ ls -li
total 8
6558451 -rw-r--r--  1 ***  staff  0 11 13 13:52 a
6559485 lrwxr-xr-x  1 ***  staff  4 11 13 15:11 b -> test
6557711 -rw-r--r--  2 ***  staff  0 11 13 13:13 c
6557711 -rw-r--r--  2 ***  staff  0 11 13 13:13 test

參考文獻:

  1. Linux命令行與shell腳本編程大全(第三版)
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容