前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软链接和硬链接

软链接和硬链接

作者头像
zy010101
发布2019-07-02 13:16:56
1.3K0
发布2019-07-02 13:16:56
举报
文章被收录于专栏:程序员程序员

版权声明:本文为博主原创文章,转载请注明博客地址: https://cloud.tencent.com/developer/article/1454505

软链接

Linux下的软链接其实就是Windows下的快捷方式。

在Linux下,我们使用ln命令创建软链接。

软链接创建以后颜色就是青色的。我们打开它可以看到和原来的文件HelloWorld.c的内容是一样的。我们使用ls命令来具体看一看hello的属性。

当我们在创建软链接的时候,最好使用绝对路径,这样就不会出错了。

创建软链接的命令格式如下:这样创建的软链接是可以移动的。当你移动软链接到别的目录下,仍旧能够使用。

代码语言:javascript
复制
ln -s 原始文件绝对路径 链接文件绝对路径

软链接是快捷方式,它相当于指向该文件的指针。通过它可以访问原始文件。链接文件的大小表示的是原始文件名的长度。当我们删除这个软链接的时候,原始文件并不会被删除。

硬链接

在存储系统上,一个文件或目录包含在一个 集合中。有关文件的信息包含在一个 inode 中。inode 号也称为文件序列号,且在特定文件系统内是惟一的。由于硬链接指向一个 inode,且 inode 仅在特定文件系统内是惟一的,硬链接不能跨越文件系统。如果一个文件有多个硬链接,仅在指向 inode 的最后一个链接被删除且链接数为 0 时文件才会被删除。不能为目录创建硬链接。

创建硬链接的命令格式如下:即使不使用绝对路径也没有问题。

代码语言:javascript
复制
ln 原始文件路径 链接文件路径

如上图,硬链接不能跨越文件系统。当我们输入上面的命令创建硬链接以后。再来看看文件本身的链接计数。

他的链接计数变成了两个。我们去删除Myfifo文件。它的计数就会变为1.

硬链接实际上就是一个文件多个名字,它有几个名字,相应的链接数就是几。当修改其中任意一个硬链接文件的时候,原始文件会被修改(本质上就是修改原始文件)。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年05月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 软链接
  • 硬链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档