【Linux】文件类型
我們知道在Linux下一切皆文件,那么Linux下是如何區分這些文件的呢?我們知道在windows下是查看文件的后綴名來區分各種各樣的文件,但是在Linux下卻沒有后綴名那么我們如何區分呢?
一、inode
文件數據都存儲在“塊”中,那么我們必須要用一個地方去存儲文件的各種信息,包含了文件的創建者,文件的創建實現,文件的大小,文件的權限等信息,存儲這些信息的區域就叫做inode,中文名稱“索引結點”。
inode是Linux下的一種數據結構,其實是一種結構體,包含了一些變量,這些變量用來記錄文件的各種信息,因為包含了各種關于文件的信息,所以它也是Linux下管理文件的最基本單位,也是鏈接目錄和文件的橋梁。
inode結構體主要包含以下信息:
以上只是inode結構體的一部分內容,由此可見一個inode包含了文件的很多信息,因此我們如果需要對一個文件進行操作,首先要做到的就是找到這個文件所對應的inode編號,然后用這個inode對文件進行操作。
二、Linux下文件類型
Linux下的文件類型主要分為7類:
- d:文件夾。
- -:普通文件
- l:鏈接(和windows下的快捷方式類似)
- b:塊設備文件
- p:管道文件
- c:字符設備文件
- s:套接字文件
(1)文件夾
文件夾是以“d”開頭的文件
我們可以看到在文件屬性的最開頭是以d字母為開頭,這便是目錄文件。
(2)普通文件
普通文件以“-”開頭的文件
我們可以看到在文件屬性的最開頭是以“-”為開頭,這便是普通文件。
普通文件又分為以下三種:
- 二進制文件
可執行文件就是二進制文件 - 純文本文件
純文本文檔 - 數據格式文件
某些特定格式的檔案
(3)鏈接文件
鏈接文件是以“l”開頭的文件
(4)字符設備文件
我們進入/dev目錄就會看好多這種文件。
字符設備文件:以”c”開頭的文件,就是一些串行端口的接口文件,比如鍵盤、鼠標等
這個種類的文件,是用mknode來創建,用rm來刪除。目前在最新的Linux發行版本中,我們一般不用自己來創建設備文件。因為這些文件是和內核相關聯的。
(5)塊設備文件
塊設備文件以”b”開頭的文件。
(6)套接字
套接字以”s”開頭的文件。
套接字文件還被稱為數據接口文件,這種類型的文件通常被用在網絡上的數據連接。我們可以啟動一個程序來監聽客戶端的請求,而客戶端就可以通過數據接口文件來進行數據通信。
(7)管道
管道以”p”開頭的文件。
管道文件也是一種特殊的文件類型也叫作數據輸送文件,它主要的目的是解決多個程序同時訪問一個文件所造成的錯誤問題。解決的方法就是FIFO。
管道文件的屬性是以”p”開頭的。
總結
以上是生活随笔為你收集整理的【Linux】文件类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 理解和使用工具(二)-文件系统Heira
- 下一篇: 【IJCV2020】【语义编辑】Sema