ln 命令

该命令在文件之间创建链接。这种操作实际上是给系统中已有的某个文件指定另外一个 可用于访问它的名称。对于这个新的文件名,我们可以为之指定不同的访问权限,以控 制对信息的共享和安全性的问题。 如果链接指向目录,用户就可以利用该链接直接进入被链接的目录而不用打一大堆的路 径名。而且,即使我们删除这个链接,也不会破坏原来的目录。

语法:ln [选项] 目标 [链接名]
      ln [选项] 目标 目录

链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。 建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建 立指向目录的硬链接。而对符号链接,则不存在这个问题。 默认情况下,ln产生硬链接。

在硬链接的情况下,参数中的“目标”被链接至[链接名]。如果[链接名]是一个目录名 ,系统将在该目录之下建立一个或多个与“目标”同名的链接文件,链接文件和被链接 文件的内容完全相同。如果[链接名]为一个文件,用户将被告知该文件已存在且不进行 链接。如果指定了多个“目标”参数,那么最后一个参数必须为目录。

如果给 ln 命令加上 -s 选项,则建立符号链接。如果[链接名]已经存在但不是目录, 将不做链接。[链接名]可以是任何一个文件名(可包含路径),也可以是一个目录, 并且允许它与“目标”不在同一个文件系统中。如果[链接名]是一个已经存在的目录, 系统将在该目录下建立一个或多个与“目标”同名的文件,此新建的文件实际上是指向原 “目标”的符号链接文件。

ln -s lunch /home/xu
% 为当前目录下的文件 lunch 创建了一个符号链接 /home/xu。