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参数