zoukankan      html  css  js  c++  java
  • Linux下硬链接与软链接

    linux下的链接文件,尤其是软链接使用非常的频繁;

    链分为硬链接(hard link)与软链接(symbolic link) 两种;关键在于inode;

    硬链接:

    当系统需要读取一个文件时,就会去读取inode table, 然后再去根据 inode中的信息到志区域去把数据读取出来。 而硬链接是直接建立了一个指向文件位置块区域的一个inode。 不过几个限制:1)不能跨文件系统,因为不同的文件系统的inode table是不一样的;2)不能链接目录;

    软链接:

    跟硬链接不同,软链接建立了一个独立的文件,而这个文件的作用就是当读取这个链接文件时,它们转发到该文件所链接的文件上。它就相当于我们windows系统下的快捷键啊;很小的;

    命令:ln

    语法 ln [-s] [被链接文件] [链接文件]

    ln的常用的选项为 -s, 当加上时,为软链接, 当不加时,为硬链接;

    举例:

    下面有两个文件:

    yinheyi@yinheyi-Aspire-V5-471G:~/play$ ls -l
    总用量 476
    -rw-r--r-- 1 yinheyi yinheyi 306788 7月  27 22:19 caffeNet.ipynb
    -rw-r--r-- 1 yinheyi yinheyi 179976 6月   1 21:09 googLeNet.ipynb

    我们为 caffeNet.ipynb 文件分别建立硬链接与软链接;

    yinheyi@yinheyi-Aspire-V5-471G:~/play$ ln caffeNet.ipynb caffeNet_硬链接.ipynb
    yinheyi@yinheyi-Aspire-V5-471G:~/play$ ln -s caffeNet.ipynb caffeNet_软链接.ipynb

    现来观察观察:

    yinheyi@yinheyi-Aspire-V5-471G:~/play$ ls -l
    总用量 776
    -rw-r--r-- 2 yinheyi yinheyi 306788 7月  27 22:19 caffeNet.ipynb
    lrwxrwxrwx 1 yinheyi yinheyi     14 7月  28 09:31 caffeNet_软链接.ipynb -> caffeNet.ipynb
    -rw-r--r-- 2 yinheyi yinheyi 306788 7月  27 22:19 caffeNet_硬链接.ipynb
    -rw-r--r-- 1 yinheyi yinheyi 179976 6月   1 21:09 googLeNet.ipynb

    看到了什么?是不是软链接很小,就14K, 而硬链接的大小与原文件的大小相同,都为306788k;

    完毕;

    参考: http://www.apelearn.com/study_v2/chapter7.html#id10

  • 相关阅读:
    HDU 2955 Robberies(01背包)
    HDU 2602 Bone Collector(01背包)
    HUST 1352 Repetitions of Substrings(字符串)
    HUST 1358 Uiwurerirexb jeqvad(模拟解密)
    HUST 1404 Hamming Distance(字符串)
    HDU 4520 小Q系列故事――最佳裁判(STL)
    HDU 2058 The sum problem(枚举)
    【破解】修改程序版权、添加弹窗
    HDU 1407 测试你是否和LTC水平一样高(枚举)
    HDU 1050 Moving Tables(贪心)
  • 原文地址:https://www.cnblogs.com/yinheyi/p/7248507.html
Copyright © 2011-2022 走看看