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

(一)软链接

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

[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的连接数也会减少。

【ARM-Linux开发】Linux链接的更多相关文章

  1. BeagleBoneBlack Linux开发相关链接收藏

    ubuntu挂载vdi文件 官方linux代码地址 官方devicetree代码地址 [转]使用BBB的device tree和cape(重新整理版) iio: input: ti_am335x_ad ...

  2. 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容

    [Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...

  3. 应聘linux/ARM嵌入式开发岗位

    **************************************************************** 因为发在中华英才和智联招聘没有人采我所以我 在这里发布我的个人简历希望 ...

  4. Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核

    Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...

  5. 【DSP开发】【Linux开发】基于ARM+DSP进行应用开发

    针对当前应用的复杂性,SOC芯片更好能能满足应用和媒体的需求,集成众多接口,用ARM做为应用处理器进行多样化的应用开发和用户界面和接口,利用DSP进行算法加速,特别是媒体的编解码算法加速,既能够保持算 ...

  6. 基于QEMU的ARM Cortex-A9开发板Vexpress-ca9的Linux内核的编译和运行

    宿主机:Ubuntu16.04 x64(Linux内核4.4.0) 交叉编译工具链:gcc-arm-linux-gnueabiarm-linux-gcc:4.4.3QEMU:2.5.0Linux ke ...

  7. 嵌入式Linux开发教程:Linux常见命令(上篇)

    摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...

  8. 嵌入式Linux开发系列之一: 走进嵌入式Linux的世界

    转载:http://www.ibm.com/developerworks/cn/linux/l-embed/part1/index.html   随着信息化技术的发展和数字化产品的普及,以计算机技术. ...

  9. 嵌入式Linux开发

    嵌入式Linux的开发和研究是Linux领域研究的一个热点,目前已开发成功的嵌入式系统有一半以上都是Linux.Linux到底有什么优势,使之取得如此辉煌的成绩呢?本文分为两大部分:Linux的优点. ...

  10. 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】

    [Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...

随机推荐

  1. 浏览器事件环(EventLoop)

    1. 基础知识 1. js语言特点 1. js语言是单线程语言,主线程是单线程.如UI渲染,脚本加载是主线程任务. 2. js语言采用事件循环(EventLoop)机制. 2. 同步任务: 不被引擎挂 ...

  2. 富文本编辑器直接从 word 中复制粘贴公式

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  3. http 内容协商返回最适合的内容

    内容协商返回最命适的内容AcceptAccept-CharsetAccept-EncodingAccept-LanguageContent-Language内容协商技术有以下 3 种类型.服务器驱动协 ...

  4. 为什么margin:0 auto不能用于inline-block元素

    前言:今天一个实习生问我,为什么他对图片使用了margin:0 auto,但图片却没有居中,我让他换成对父元素使用text-align:center即可.为什么margin:0 auto对图片不起作用 ...

  5. python常用模块(不定期更新)

    前言: 随着python开发项目越来越大,显然应该把不同功能的代码放到不同的.py文件里,每一个.py文件叫一个模块:模块分为(1)内置标准模块(2)第三方模块(3)自定义模块 这三种.这篇博客就是用 ...

  6. UVA 11605 Lights inside a 3d Grid —— (概率和期望)

    题意:见大白书P181. 分析:一个一个点的进行分析,取其期望然后求和即可.假设当前点在第一次中被选到的概率为p,f[i]表示进行k次以后该点亮的概率(在这里也可以理解为期望),g[i]表示k次后该点 ...

  7. redhat7.4安装gitlab

    1.参考官方安装指南 https://about.gitlab.com/install/#centos-7 2.遇到的问题 2.1.启动postfix出错 错误内容 Job for postfix.s ...

  8. 调皮捣蛋的Linux下有趣终端的合集

    *本文作者:国光,转载自 FreeBuf.COM,原文地址:https://www.freebuf.com/news/144050.html 前言 刚开始接触Linux的我们,肯定认为Linux系统就 ...

  9. CentOS 安装 MySQL PDO 扩展

    yum install php-pdo_mysql sudo service php-fpm restart

  10. Java排序之归并排序

    Java排序之归并排序 1. 简介 归并排序的算法是将多个有序数据表合并成一个有序数据表.如果参与合并的只有两个有序表,则成为二路合并.对于一个原始的待排序数列,往往可以通过分割的方法来归结为多路合并 ...