Linux文件类型及颜色标识

文件类型(共7种):

– :普通文件

d:目录文件 (directory)

c:字符设备文件 (char)

b:块设备文件 (block)

s:本地域套接口 (socket)

p:有名管道 (pipeline)

l:符号连接 (link)

关于硬链接、软连接、复制之间的区别说明:

Linux文件类型及颜色标识

上图中,我为photo.png这个图片文件建立了一个拷贝(photo-copy.png),一个硬链接(photo-hlink),一个软连接(photo-slink),用ls -il命令显示出他们的文件信息,下面我就进行下对比说明:

先对比复制版和硬链接(图中第一行和第二行)

可以看出两者的区别只在我画黄框的地方,这个黄框中的内容是iNode,通过和原文件photo.png对比,可以看出,硬链接photo-link和原文件的iNode相同,而复制版photo-copy.png与原文件iNode不同。这里的区别导致的现象是当你修改原文件时,photo-copy.png的内容不会发生改变,而photo-hlink会与原文件同时变化,反过来也是一样,修改photo-hlink原文件也会发生变化,而photo-copy.png不会改变。也就是说,原文件和photo-hlink还是同一个文件,而photo-copy.png已经是另一个文件了。还有一点区别在于,拷贝可以跨文件系统,而硬链接只能在一个文件系统内。

再对比下硬链接和软连接(图中第二行和第四行)

软连接更像windows里的快捷方式,可以看到黄框中,软连接和原文件的iNode的也不同,再看绿框中的内容,这列代表文件类型,软连接的文件类型是一个link类型,而硬链接的类型还是普通文件类型,再看红框中的内容,这列表示文件大小,可以看到软连接的文件大小只有9字节,说明它并不是一个文件的拷贝版本,而只是一个引用而已。软连接和硬链接都能启动并编辑程序,区别在于删除部分,删除原文件后,硬链接仍然可用,但软连接已经失效了。

总结:

拷贝:和我们正常理解的拷贝没有区别,与原文件大小相同,iNode是一份独立的文件,可以跨文件系统,原文件修改或删除对其都没有影响。

硬链接:也是一种拷贝,与原文件大小相同,但iNode与原文件相同,不可以跨文件系统,原文件内容修改,硬链接跟随会有相同的修改,原文件删除,硬链接仍然可用。

软连接:是一种应用,类似与windows的快捷方式,文件类型为l,大小很小,iNode与原文件不相同,可以跨文件系统,当原文件删除时,软连接将失效。

终端中文件的颜色:

蓝色:目录绿色:可执行文件;红色:压缩文件;浅蓝色:链接文件;灰色:其他文件;红色闪烁:链接的文件有问题了黄色:设备文件。紫色:图片文件。

原创文章,作者:yangtian,如若转载,请注明出处:http://www.178linux.com/52278

(0)
yangtianyangtian
上一篇 2016-10-16 21:39
下一篇 2016-10-16 22:02

相关推荐

  • N26-肉肉-第一周作业

    1.描述计算机的组成及其功能CPU:运算器、控制器、寄存器、缓存存储器:内存,RAM(Random Access Memory)    IO:输入输出设备2.按系列罗列linux的发行版本,并描述不同发行版本之间的联系与区别。发行版有数百种之多,著名的主流发行版有3种Debian,Slackware,RedHatDebian:使…

    Linux干货 2017-01-03
  • 优云老王(三)谈埋点:人生处处有埋点

    说到埋点,的确是用户最感兴趣的话题之一,优云Web产品在内测阶段便收到了用户的各种反馈,反复问我无码埋点是怎么做的。在此我专门与大家聊聊埋点以及各种实现方案的利弊。 1、埋点的来历 先说下埋点的来历,其实在互联网没流行起来之前,埋点并不是用来分析用户行为的,技术人员为了解决某些问题,就在代码里面加入了些行为逻辑代码,如果用户使用产品的过程中出了问题,就生成一…

    2016-09-19
  • 第三周课堂练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@myserver ~]# whoami  root  [root@myserver ~]# who | cut -d' ' -…

    Linux干货 2016-09-19
  • man 命令简单介绍

    man n command man手册页分为下面几个部分: 1 普通命令2 内核提供的系统调用3 库调用4 设备文件5 文件格式规范6 游戏7 杂项8 系统管理命令

    Linux干货 2018-03-03
  • Linux简述

    计算机诞生                                                  …

    2017-03-18
  • 马哥教育网络班22期+第六周课程练习

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; ]# cp -v  /etc/rc.d/rc.sysinit /tmp/    `/etc/rc.d/rc.sysinit' -> `/tmp/rc.sysinit&…

    Linux干货 2016-10-17