Linux命令 硬链接和符号链接

链接

创建链接的方式

  1. 创建硬链接
    ln file link
  2. 创建符号链接
    ln -s item link
    item 可以是文件也可以是目录

硬链接

  1. 文件名本身就是一个硬链接,当创建额外的硬链接就相当与给文件又起了个名字


fun文件的第2个字段说明它有1个链接,文件至少有一个链接。

  1. 硬链接和文件本身没什么区别


这里我们创建了一个硬链接fun-hard。使用ls -i选项可以看文件的索引节点号,fun和fun-hard的索引节点号相同,证明二者是同一个文件。

  1. 删除任何一个硬链接不会删除文件本身,除非它是文件的最后一个硬链接

符号链接

硬链接的不足:

  1. 不能引用不在同一磁盘分区的文件
  2. 不能引用目录

符号链接是一种特殊的文件,它包含了指向目标文件或目录的文本指针。

  1. 符号链接类似于windows中的快捷方式,可以把它当作其指向的文件使用

  1. 删除文件后,指向该文件的符号链接依然存在,但是不指向任何文件,变成坏链接

  1. 符号链接其实就是保存了目标文件的地址(绝对地址或者相对与链接的地址)


可以看到第五个字段为6,这是符号链接的文件长度,其实就是“../fun”。
注意这里目标文件的地址是相对于创建的符号链接的,而不是相对于当前路径,因为这个地址是要保存在符号链接对应的文本文件的。
所以应该写成“../fun”而不是“./fun”。

posted @ 2020-09-16 11:16  来一块小饼干  阅读(506)  评论(0编辑  收藏  举报