Linux中的硬连接和软连接怎么用

一、硬连接是一个文件拥有两个文件名,软连接是创建类似windows的快捷方式

比如我在test目录下,新建一个test.md文件,然后建立一个硬连接和一个软连接

#创建text.md文件
touch test.md
#创建一个硬连接
ln test.md hardlink.md
#创建一个软连接
ln -s test.md softlink.md

然后看一下目录结构,可以看到:
1、hardlink.md和test.md是一模一样的文件,实际上只是一个文件,两个文件名(这种机制在windows好像没有)
2、而softlink.md指向test.md


Linux中的硬连接和软连接怎么用_第1张图片
image.png

二、编辑

如果编辑任何一个文件,则3个都是同步的
所以编辑的情况下,软连接和硬连接并没什么区别。

三、删除

如果我删除test.md或者hardlink.md,另一个并不会收到影响,可以认为你只是删除了其中一个文件名。

不过如果你删除了test.md,那么softlink.md就会被标识为红色,表示源文件gg了,不过也可以看出,softlink.md仍然指向test.md


image.png

所以如果重新新建test.md,则softlink.md依然可用。
通过touch test.md或者touch softlink.md都可以新建test.md

但是hardlink.md和test.md就是完全不相干的两个文件了。

四、其他

通常情况下软连接用的比较多
文件夹只能建立软连接
如果跨磁盘,也只能用软连接

五、总结

所以貌似软连接更屌也更常用
硬连接唯一的特性就是删掉任意一个其他的还存在,不过我感觉这个特性貌似并没有什么卵用,反而容易被滥用

你可能感兴趣的:(Linux中的硬连接和软连接怎么用)