介紹
Linux ln命令是一個非常重要命令,它的功能是爲某一個文件在另外一個位置建立一個同步的鏈接。
當我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然後在 其它的目錄下用ln命令鏈接(link)它就可以,不必重複的佔用磁盤空間。
語法
ln [參數][源文件或目錄][目標文件或目錄]
其中參數的格式爲
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]
[--help] [--version] [--]
命令功能 :
Linux文件系統中,有所謂的鏈接(link),我們可以將其視爲檔案的別名,而鏈接又可分爲兩種 : 硬鏈接(hard link)與軟鏈接(symbolic link),硬鏈接的意思是一個檔案可以有多個名稱,而軟鏈接的方式則是產生一個特殊的檔案,該檔案的內容是指向另一個檔案的位置。硬鏈接是存在同一個文件系統中,而軟鏈接卻可以跨越不同的文件系統。
不論是硬鏈接或軟鏈接都不會將原本的檔案複製一份,只會佔用非常少量的磁碟空間。
軟鏈接:
- 軟鏈接,以路徑的形式存在。類似於Windows操作系統中的快捷方式
- 軟鏈接可以 跨文件系統 ,硬鏈接不可以
- 軟鏈接可以對一個不存在的文件名進行鏈接
- 軟鏈接可以對目錄進行鏈接
硬鏈接:
- 硬鏈接,以文件副本的形式存在。但不佔用實際空間。
- 不允許給目錄創建硬鏈接
- 硬鏈接只有在同一個文件系統中才能創建
命令參數
必要參數:
-b 刪除,覆蓋以前建立的鏈接
-d 允許超級用戶製作目錄的硬鏈接
-f 強制執行
-i 交互模式,文件存在則提示用戶是否覆蓋
-n 把符號鏈接視爲一般目錄
-s 軟鏈接(符號鏈接)
-v 顯示詳細的處理過程
選擇參數:
-S "-S<字尾備份字符串> "或 "--suffix=<字尾備份字符串>"
-V "-V<備份方式>"或"--version-control=<備份方式>"
--help 顯示幫助信息
--version 顯示版本信息
遇到的問題
1. ln -s 創建軟鏈接不生效
ln -s
命令創建軟鏈接後,使用ls -lh
查看目標路徑的軟鏈接,發現軟鏈接閃爍,對其進行cat提示沒有那個文件。
解決辦法:
使用絕對路徑而不是相對路徑,相對路徑會導致文件找不到。
ln -s 源文件絕對路徑 目標軟鏈接文件絕對路徑