• Linux 文件系统 -- 简述几种文件类型


      Linux 中一切皆为文件,文件类型也有多种,使用 ls -l 命令可以查看文件的属性,所显示结果的第一列的第一个字符用来表明该文件的文件类型,如下:

    1、普通文件

      使用 ls -l 命令后,第一列第一个字符为 "-" 的文件为普通文件,如上图所示,普通文件一般为灰色字体,绿色字体的是可执行文件,红色字体的是压缩文件。

    文件的权限:

      以普通文件为例,使用 ls -l 命令,可以看到结果的第一列是 -rwxrwxrwx 的形式,其中第一个字符 "-" 表示这个文件为普通文件,它也可以是其他的字符,不同的字符代表不同类型的文件。其后的一串字符表明了该文件的权限,其中:

    1)r 表明该文件具有可读权限,若该位置为 "-" ,则表明文件不可读;

    2)w 表明该文件具有写权限,若该位置为 "-" ,则表明文件不可写;

    3)x 表明该文件具有可执行权限,若该位置为 "-" ,则表明文件不具有可执行权限;

    4)第一个 rwx 表示该文件的所有者对该文件的权限;第二个 rwx 表示该文件所属组对该文件的权限;第三个 rwx 表示其他用户对该文件的权限。

    创建一个普通文件:

      可以使用 touch 命令来创建一个文件:

    touch newfile

    删除一个普通文件:

      可以使用 rm 命令来删除一个文件:

    rm newfile

    2、目录文件

      Linux 中的目录也是文件,目录文件中保存着该目录下其他文件的 inode 号 和文件名等信息,目录文件中的每个数据项都是指向某个文件 inode 号的链接,删除文件名就等于删除与之对应的链接。目录文件的字体颜色是蓝色,使用 ls -l 命令查看,第一个字符为"d"(directory)。

    目录文件的权限

    1)r 表明该目录文件具有可读权限,即可以使用 ls 命令查看该目录的存储情况;

    2)w 表明该目录文件具有写权限,即可以往该目录下添加、修改、删除文件;

    3)x 表明该目录文件具有可执行文件,即可以使用 cd 命令进入到该目录下。

      可以使用 chmod 指令来改变文件的权限。

    创建一个目录:

      可以使用 mkdir 命令来创建一个目录文件:

    mkdir directory

    删除一个目录:

      可以使用 rmdir 命令来删除一个空目录:

    rmdir directory

      如果该目录下有其他文件,则可以使用 rm -r 命令来递归删除该目录下的所有文件。需要注意的是,使用该命令将会删除该目录及目录下的所有数据,过程不可逆,需要谨慎使用:

    rm -r directory

    3、链接文件

      链接文件一般指的是一个文件的软连接(或符号链接),使用 ls -l 命令查看,第一个符号为  "l",文件名为浅蓝色,如下:

       这里,test_softlink 就是一个链接文件,从结果上还可以看到它是文件 test.txt 的软链接,删除原文件 test.txt 的话,对应的软链接文件 test_softlink 也会消失。可以使用 ln 命令来创建一个文件的链接文件:

    1)软链接

      软链接(又称符号链接),使用 ln -s file file_softlink 命令可以创建一个文件的软链接文件:

    ln -s test.txt test_softlink

      软链接相当于给原文件创建了一个快捷方式,如果删除原文件,则对应的软链接文件也会消失。

    2)硬链接

      硬链接,相当于给原文件取了个别名,其实两者是同一个文件,删除二者中任何一个,另一个不会消失;对其中任何一个进行更改,另一个的内容也会随之改变,因为这两个本质上是同一个文件,只是名字不同。使用 ls -i 命令查看,可以发现硬链接的两个文件的 inode 号是一样的:

      同样的,使用 ln 命令可以创建一个文件的硬链接:

    ln test.txt test_hardlink

    4、设备文件

      Linux 中的硬件设备如硬盘、鼠标等也都被表示为文件,即为设备文件。设备文件一般存放在 /dev/ 目录下,文件名为黄色,如下:

      设备文件分两种:

    1)块设备文件:

      块设备文件支持以块(block)为单位的访问方式。在 EXT4 文件系统中,一个 block 通常为 4KB 的大小,也就是说每次可以存取 4096(或其整数倍) 个字节的数据。应用程序可以随机访问块设备文件的数据,程序可以自行确定数据的位置,硬盘、软盘等都是块设备。使用 ls -l 命令查看,块设备文件的第一个字符是 "b"(block)。

    2)字符设备文件:

      字符设备文件以字节流的方式进行访问,由字符设备驱动程序来实现这种特性,这通常要用到 open、close、read、write 等系统调用。字符终端、串口和键盘等就是字符设备。另外,由于字符设备文件是以文件流的方式进行访问的,因此可以顺序读取,但通常不支持随机存取。使用 ls -l 命令查看,字符设备文件的第一个字符是 "c"(char)。

    5、管道文件(FIFO文件)

      管道文件主要用于进程间通信,使用 ls -l 命令查看,第一个字符为 "p"(pipe)。可以使用 mkfifo 命令来创建一个管道文件:

    mkfifo fifo_file

      在 FIFO 中可以很好地解决在无关进程间数据交换的要求,FIFO 的通信方式类似于在进程中使用文件来传输数据,只不过 FIFO 类型的文件同时具有管道的特性,在读取数据时,FIFO 管道中同时清除数据。 

  • 相关阅读:
    UI自动化测试框架
    Pyse( selenium-api的二次封装)
    Selenium之webdriverAPI
    selenium 基础之定位方式
    html综合应用
    html基础之js操作
    html基础之Dom操作
    (九)Locust 参数化
    (八)Locust 设置断言
    (七)Locust 的类和方法
  • 原文地址:https://www.cnblogs.com/tongye/p/10410098.html
Copyright © 2020-2023  润新知