专栏首页程序员软链接和硬链接

软链接和硬链接

版权声明:本文为博主原创文章,转载请注明博客地址: https://blog.csdn.net/zy010101/article/details/90609090

软链接

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

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

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

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

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

ln -s 原始文件绝对路径 链接文件绝对路径

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

硬链接

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

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

ln 原始文件路径 链接文件路径

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

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • C语言的编译器和链接器

    C语言的编译分为两个阶段:编译和链接。首先编译器把源代码转换为中间代码,也称为目标代码(目标代码一般是该平台的的机器语言);目标代码并不完整,它不是可执行的。目...

    zy010101
  • 静态链接库

    库的存在,大大方便了我们进行编程。因为有了库,我们不必再从0开始,例如我们大多数人C语言写的第一个程序Hello World!都是用了库函数。以printf为例...

    zy010101
  • Linux文件及文件I/O

    版权声明:本文为博主原创文章,转载请注明博客地址: https://blog.csdn.ne...

    zy010101
  • 软链接 vs. 硬链接

    要想理解硬链接和软链接的区别,首先要明白什么是 Inode。Inode 是 Index node,索引节点的意思。每个文件都有一个 inode,里边保存着文件的...

    Coding十日谈
  • 短链接原理

      顾名思义,短链接即是长度较短的网址。通过短链接技术,我们可以将长度较长的链接压缩成较短的链接。并通过跳转的方式,将用户请求由短链接重定向到长链接上去。短链接...

    田小波
  • Linux中的链接文件_软链接和硬链接

    Zoctopus
  • Linux硬链接与软链接原理及用法解析

    在linux系统中有种文件是链接文件,可以为解决文件的共享使用。链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(S...

    砸漏
  • 短链接原理分析

    顾名思义,短链接即是长度较短的网址。通过短链接技术,我们可以将长度较长的链接压缩成较短的链接。并通过跳转的方式,将用户请求由短链接重定向到长链接上去。短链接主要...

    芋道源码
  • 软链接与硬链接的区别

    由于硬链接是有着相同 inode 号仅文件名不同的文件,因此硬链接存在以下几点特性:

    233333
  • 锋利的JQuery —— DOM操作

    图片猛戳链接 ?

    用户1154259

扫码关注云+社区

领取腾讯云代金券