在Linux中一切设备皆文件,首先来看一下Linux下的文件都有哪些分类,也就是文件类型
文件类型:普通文件(包括shell脚本,文档,音频,视频)、目录文件、设备文件(又细分为字符设备文件和块设备文件)、FIFO文件(管道文件这货存在于内存中)、还有socket文件又称套接字文件(它用于进程间的通信,管道传输就属于第三方通信机制)、最后还有链接文件(分成软链接和硬链接);

  • 硬链接文件:相当于源文件的一个别名,它和源文件指向相同的inode节点(这个inode后便会细说)系统并不为它重新分配inode,其实打个比方就是一个人的真名叫张三,然后别人给他起了个外号叫张狗蛋,张狗蛋和张三其实还是同一个人。这就是硬链接。
    创建硬链接:ln [ -d ] source_path target_path;
    硬链接的不足之处:

    1. 不可以在不同文件系统的文件间建立硬链接,
    2. 只有超级管理员用户才能为目录创建硬链接。
  • 软链接文件:这个就更好理解了,其实就类似于windows下的快捷方式,这个快捷方式大小很小,因为它里面只存储了源文件的文件路径。
    创建软链接:ln [ -s ] source_path target_path
    软链接文件是一个新的文件,它指向源文件,包含的是另一个文件的路径,这个路径还是个绝对路径。

    软链接示意图:

    下面说一下inode到底是个什么玩意,我对它的理解就是文件属性的结构体,他的数据包括:文件所属的组,拥有者,文件类型,文件大小,文件权限,时间戳,创建时间,修改属性的时间,修改文件内容的时间,硬链接数,额外标识,还有指向数据块的指针。上面图中的每个方格就是一个inode节点,inode节点的编号是唯一的。
    用 ls -li 命令查看当前目录下的所有文件属性。
    下面从左到右依次分析数据的含义;8004代表的就是inode节点编号,第二段一连串的字母代表文件权限,第一个‘-’省略了前七位字节,然后三位三位的看,rwx是这个文件拥有者的权限:读写执行;r-x是文件所属组对这个文件的权限,也就是同一个小组的成员可以对这个文件进行读和执行的操作;然后还有个 r-x 是其他用户对这个文件具有读和可执行的权限。 数字 1 代表硬连接数,每个新建的文件硬链接数就是1,然后是 文件所有者 文件所属组这个文件的所属组合所有者都是root,接下来是文件或目录大小,后面是文件创建的时间,9月18日,18:20,最后是文件或目录名称。

后面老师讲的就是在Linux下用C语言操作文件,解释了一些文件函数以及函数中的参数和返回值。记得有句话很深刻,C语言中的文件读取和写入对象直接就是操作文件本身,而java的是从硬盘上读取和写入这还是有区别的。

目前笔主了解的就这些,还是有许多不足之处,希望大家批评指正共同进步!

linux下的文件类型的更多相关文章

  1. linux系统的文件类型学习

    linux是一个文件型操作系统,在linux下一切皆文件. 目录.字符设备.块设备.管道.套接字.符号连接文件等在linux下统统都是文件. linux下的文件类型分为以下几种类型: 1. 正规文件, ...

  2. Day3(1)linux文件系统及文件类型

    Linux的文件系统 根文件系统(rootfs) root filesystem LSB,FHS:(FileSystem Heirache Standard) /etc,/usr,/var,/root ...

  3. Linux下的文件及文件后缀名

    Linux下的文件及文件后缀名 2013-03-14 15:34 6969人阅读 评论(0) 收藏 举报 ++++++++++++++++++++++++++++++++++++++正文+++++++ ...

  4. 5 个在 Linux 中管理文件类型和系统时间的有用命令

    对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同 ...

  5. linux下各文件夹的结构说明及用途介绍

    linux下各文件夹的结构说明及用途介绍: /bin:二进制可执行命令.   /dev:设备特殊文件.   /etc:系统管理和配置文件.   /etc/rc.d:启动的配 置文件和脚本.   /ho ...

  6. 【转】linux下各文件夹的结构说明及用途介绍

    linux下各文件夹的结构说明及用途介绍: /bin:二进制可执行命令. /dev:设备特殊文件. /etc:系统管理和配置文件. /etc/rc.d:启动的配 置文件和脚本. /home:用户主目录 ...

  7. Linux下的文件与目录权限

    一.用户(User).群组(Group)和其他人(Others) linux是多用户多任务的操作系统,同一时刻可能会有多个用户登录系统,考虑到文件的安全性等问题,所以Linux下的文件都属于一个特定的 ...

  8. 在Linux下搜索文件

    在Linux下搜索文件============================= 1,which 查找可执行文件的绝对路径 [root@aminglinux ~]# which cat /bin/ca ...

  9. Linux下各文件夹的结构说明及用途介绍(转载)

    linux下各文件夹的结构说明及用途介绍: /bin:二进制可执行命令. /dev:设备特殊文件. /etc:系统管理和配置文件. /etc/rc.d:启动的配 置文件和脚本. /home:用户主目录 ...

随机推荐

  1. 最详细Python批量字典暴力破解zip密码

    工具破解 前两天在网上下来了一波项目案例,结果全是加密的压缩包,于是去网上找了一个压缩包破解的工具 苦于工具破解太慢,一个压缩包要好久,解压了三个之后就放弃了,准备另寻他法 密码字典 巧的是破解的三个 ...

  2. EasyX 简易绘图工具接口整理

      EasyX Library for C++ (Ver:20190415(beta)) http://www.easyx.cn EasyX.h 1 #pragma once 2 3 #ifndef ...

  3. 浏览器小程序(Browser Applet)闪亮登场

    2017 年 1 月 9 日,微信小程序横空出世.随后,支付宝小程序.今日头条小程序.百度智能小程序.360小程序等纷纷推出,自此国内软件功能扩展领域进入到了小程序时代,小程序为丰富其宿主软件的功能和 ...

  4. 搭建本地yum镜像源

    Blog:博客园 个人 目录 概述 语法说明 参数说明 部署 配置阿里云源 同步源 建仓 Nginx配置 配置定时计划 yum配置 概述 由于内网有大量机器不能访问公网,安装软件比较费劲,那么,如何让 ...

  5. JVM虚拟机(三):Java内存区域

    运行时数据区   Java虚拟机再执行Java程序过程中会把它所管理的内存划分为若干个不同分工的数据区域. 程序计数器   程序计数器时一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示 ...

  6. css进阶 03-网页设计和开发中,关于字体的常识

    03-网页设计和开发中,关于字体的常识 #前言 我周围的码农当中,有很多是技术大神,却常常被字体这种简单的东西所困扰. 这篇文章,我们来讲一讲关于字体的常识.这些常识所涉及到的问题,有很强的可操作性, ...

  7. Raft算法系列教程1:Leader选举

    1.服务器的三种角色 Raft算法中服务器主要分为三种角色:Leader.Follower.Candidate,并且三种角色相互独立,也就是服务器在同一时间内只可能扮演其中一种角色. Leader:用 ...

  8. HTC Vive使用WebVR的方法以及启用后头显无画面的解决方法

    1.下载支持WebVR的浏览器. 笔者使用的是HTC Vive,故下载了Firefox的Nightly版本[下载地址]. 2.Nightly 开启WebVR的步骤[引用自Mozilla VR] 1.从 ...

  9. C#中RDLC报表常用表达式(字符串和转换)

    字符串函数 (1)使用串联运算符和 Visual Basic 常量可将多个字段组合在一起.以下表达式返回两个字段,它们分别位于同一文本框的不同行中:=Fields!FirstName.Value &a ...

  10. 使用h5开发跨平台APP确保数据安全交互---服务器篇

    从eclipse到android studio的安卓开发经验告诉我原声开发才是硬道理,其实以前很抵触html5开发app的,虽然没有去了解过,但是冥冥中就觉得它运行速度太慢了,加载渲染根本比不上原生开 ...