in链接指向的是节点(inode),是已存在文件的另一个名字,修改其中一个,与其连接的文件同时被修改;对in链接文件进行读写和删除操作时候,效果和符号链接相同。下面将分三方面介绍ln命令:
1、功能:
是为某一个文件或目录在另外一个位置建立一个同步的链接,类似Windows下的超级链接。
2、用法:
ln [选项]… [-T]源文件 链接名 (第一种格式)
或:ln [选项]… 源文件 (第二种格式)
或:ln [选项]… 源文件 … 目录 (第三种格式)
或:ln [选项]… -t 源文件夹 链接名… (第四种格式)
在第一种格式中,创建指定名称的链接且指向指定的源文件。
在第二种格式中,在当前目录创建指向源文件的链接。
在第三、四种格式中,在指定目录中创建指向源文件的链接。
默认创建硬链接,当使用–symbolic 时创建符号链接。
当创建硬链接时文件必须在同一个文件系统,并且不能对目录进行硬链接。符号链接可以指向任意的位置,
3、选项说明:
–backup[=CONTROL] 为每个已存在的目标文件创建备份文件
-b 类似–backup,但不接受任何参数
-d, -F, –directory 创建指向目录的硬链接(只适用于超级用户,而且有不可预知的风险,慎用哦)
-f, –force 强行删除任何已存在的目标文件
-n, –no-dereference
如果目的地是一个已存在的链接至某目录的符号链接,会将该符号链接当作普通文件处理,先将该已存在的链接备份或删除。
-i, –interactive 询问是否删除目的地文件
-s, –symbolic 创建符号链接而不是硬链接
-t, –target-directory=目录 在指定目录中创建链接
-T, –no-target-directory 将链接名当作普通文件(在对目录进行符号链接时要用到此选项)
举例:
1.对某个文件创建一个连接
$ln -s /tmp/abc.txt ~/
此命令表示在家目录下创建与源文件同名的链接到/tmp/abc.txt符号连接
$ln -s /tmp/abc.txt ~/abc