链接有两种方式:硬链接和软链接。

(一)软链接

软链接又叫做符号链接。基本命令为:

[plain] view
plain
 copy

  1. ln -s sourcePlace newPlace

软链接可以链接任何文件或者目录,还可以链接不同文件系统的文件或者目录。

软链接的特点:

1.要建立链接时,newPlace必须是存在的;而当sourcePlace不存在时建立的连接是一个空链接,相当于空指针。空链接文件也可以操作,而且如果对空链接进行操作,比如 emptyFile是空链接,进行vi emptyFile 输入一些字符后保存,那么系统会自动生成一个对应emptyFile的sourcePlace,空链接会变成一个软链接。

2.newPlace指向sourcePlace,当sourcePlace的内容改变时,newPlace的内容也会改变,反过来也是一样,当newPlace改变也会导致sourcePlace改变。

3.软链接类似于windows中的快捷方式,但在windows中,改变快捷方式,比如重命名快捷方式,不会导致源文件名字的改变。由于不清楚windows中的原理,所以不明白改变快捷方式的内容是否会引起源文件的改变。而软链接中,对newPlace的改变,是会导致sourcePlace同步改变的。

4.当删除newPlace 时,不会对sourcePlace产生影响。而删除sourcePlace时,newPlace会变成一个空链接,见第1条后半段。如果此时再创建一个与之前sourcePlace同名的文件,就会重新建立链接。但此时sourcePlace和newPlace的内容都为空。

(二)硬链接

硬链接相当于是为一个存在的文件创建一个指针,基本命令为:

[plain] view
plain
 copy

  1. ln sourceFile newFile

硬链接相对于软链接多了两个限制条件:1.不能为目录创建硬链接。我是这样理解的,不知道是否正确:硬链接相当于一个一级指针,而操作目录需要多级指针,就像多位数组或者动态存储区,但是我不明白为何软链接可以链接目录。2.只有同一个文件系统中的文件之间才能创建硬链接。

硬链接的特点:

1.sourceFile 和newFIle相互影响,同步执行。

2.建立硬链接后,sourceFile和newFile的链接数都为2,当删除sourceFile后,newFile的内容不受影响,但其链接数减少一,从链接文件变成一个普通文件。

(三)总结硬链接和软链接的相同和区别:

相同点:1.链接文件newPlace在建立链接前都必须为空。

2.sourcePlace和newPlace的修改都会影响对方。

不同点:1.软链接可以建立空链接,硬链接不行。

2.当删除sourcePlace后,软链接会失效,而硬链接只是newPlace的链接数减少;删除newPlace后,对软链接的sourcePlace不会有影响,而硬链接的sourcePlace的连接数也会减少。

最新文章

  1. How to create vlan on Linux (with Cisco Catalyst Switch)
  2. ios项目上传svn丢失*.a文件
  3. linux基础3——与XP共享文件夹的设置
  4. 2. Swift元组|可选值|断言
  5. kafka_2.11-0.8.2.2的搭建
  6. OpenGL学习——基本概念和坐标变换
  7. Civil3D二次开发 启动Civil3D异常
  8. hibernate实体的几种状态:
  9. 浅谈.NET的缓存(依赖和过期)
  10. iPhone手机VPN设置
  11. 企业邮件系统-Postfix安装使用
  12. iOS 程序调试、测试方案
  13. mybatis-XML配置文件
  14. django的models模型类的常用数据类型和选项
  15. kafka消息会不会丢失
  16. 【liunx】Linux下的压缩和解压缩命令——jar
  17. hive之窗口函数
  18. scott/tiger is locked 解决办法
  19. 内核早期内存分配器:memblock
  20. 在Eclipse使用Gradle

热门文章

  1. app连接线上数据库进行本地接口测试
  2. Luogu P4270 [USACO18FEB]Cow Gymnasts (打表找规律)
  3. 配置文件的属性ENC加密
  4. 应用webservice实现公网天气查询
  5. @Async 异步注释 @EnableAsync
  6. 数据库学习之三--Select查询及运算符
  7. rxjs——subject和Observable的区别
  8. GAN生成式对抗网络(二)——tensorflow代码示例
  9. Scarily interesting! (URAL - 2021)
  10. saltstack运维工具