7种文件类型 ls/file/stat 这些命令都可以查看文件类型
1、普通文件类型
Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-] 。一般我们在后面加上扩展名来区分文件
2、目录文件
就是目录,用mkdir来创建,能用 # cd 命令进入的。第一个属性为 [d],例如 [drwxrwxrwx]
3、块设备文件
就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。第一个属性为 [b]
4、字符设备
字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。第一个属性为 [c]
5、套接字文件 socket
这类文件通常用在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。第一个属性为 [s],最常在 /var/run目录中看到这种文件类型
6、管道文件(important)
FIFO一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误。FIFO是first-in-first-out(先进先出)的缩写,进出分别为两个进程。第一个属性为 [p]
文件名存在于文件系统之中,管道中的内容存在于内存中,可通过read write open进行操作
有名管道:同一系统中任意两个进程之间的通信
无名管道:父子进程之间的通信,子进程被fork的时候继承父进程中的管道
命令:mkfifo等
7、链接文件
类似Windows下面的快捷方式,连接和源文件会保持数据的同步。第一个属性为 [l],例如 [lrwxrwxrwx]
软连接 ln -s /bin/less /usr/local/bin/less 不占磁盘空间(系统重启就会被删除),会跳转
硬连接 ln /bin/less /usr/local/bin/less 占用空间,但是很少。类似于建立指针,重启不消失。建立硬连接后,源文件也变成指针,删除源文件只是删除源文件的那边的指针,硬连接变成普通文件。