NAME
ln - make links between files
SYNOPSIS
ln [OPTION]... [-T] TARGET LINK_NAME (1st form)
ln [OPTION]... TARGET (2nd form)
ln [OPTION]... TARGET... DIRECTORY (3rd form)
ln [OPTION]... -t DIRECTORY TARGET... (4th form)
軟連接和硬鏈接:
軟連接文件的一種快捷方式,有自己的inode文件節點,並在磁盤上有一小片空間存放路徑名;硬鏈接則是一個文件有多個別名,系統並不為它重新分配inode。軟連接可以對目錄進行連接;硬連接不行。
參數:
- -f: --force remove existing destination files
- -n: --no-dereference treat LINK_NAME as a normal file if it is a symbolic link to a drectory
- -s: --symbloic make symbolic links instead of hard links
- -v: --verbose print name of each linked file
*******************************************************************************************************
建立到文件的軟鏈接:
-
ln -sv TARGET LINK_NAME
-
ln -svf TARGET LINK_NAME
覆蓋原有軟連接
*******************************************************************************************************
建立到目錄的軟鏈接:
-
ln -sv TARGET LINK_NAME
LINK_NAME不存在時,會直接創建軟連接
-
LINK_NAME存在,且為一個目錄時,會在目錄下生成連接文件,且連接文件的目標為命令中給出的路徑,如果是相對路徑,則發生錯誤,故使用相對路徑時,謹慎
- -f 選項是不能覆蓋非連接文件類型的,下圖中使用-f選項,但是mm目錄並未被覆蓋
- 使用rm刪除連接文件的時候,如果連接文件指向目錄,則加倍小心帶/和不帶/區別
帶/刪除的是連接文件指向的目錄
不帶/才是刪除連接文件本身上圖中b為指向目錄的一個連接文件
-
上圖示例中,在xx這個連接文件所指向的目錄下,建立了以$(basename TARGET)為新名字的連接文件
-
覆蓋指向目錄的連接文件使用-n參數