在介紹屬性時,提到了最前面的標誌(d或 -)可以表示目錄或檔案,那就是不同的檔案種類。linux的檔案種類主要有下面這幾種: • 普通檔案(regular file):就是一般我們訪問的檔案,由ls -al顯示出來的屬性中,第乙個屬性為 [-],例如 [-rwxrwxrwx]。另外,依照檔案的內容,又大致可以分為:
純文字檔案(ascii):這是unix系統中最多的一種檔案型別,之所以稱為純文字檔案,是因為內容為我們可以直接讀到的資料,例如數字、字母等等。設 置檔案幾乎都屬於這種檔案型別。舉例來說,使用命令「cat ~/.bashrc」就可以看到該檔案的內容(cat是將檔案內容讀出來)。
二進位制檔案(binary):我們在gnu發展史中提過,系統其實僅認識且可以執行二進位制檔案(binary file)。linux中的可執行檔案(指令碼,文字方式的批處理檔案不算)就是這種格式的。舉例來說,命令cat就是乙個二進位制檔案。
資料格式的檔案(data):有些程式在執行過程中,會讀取某些特定格式的檔案,那些特定格式的檔案可以稱為資料檔案(data file)。舉例來說,linux在使用者登入時,都會將登入資料記錄在 /var/log/wtmp檔案內,該檔案是乙個資料檔案,它能通過last命令讀出來。但使用cat時,會讀出亂碼。因為它是屬於一種特殊格式的檔案。
• 目錄(directory):就是目錄,第乙個屬性為 [d],例如 [drwxrwxrwx]。
• 連線檔案(link):類似windows下面的快捷方式。第乙個屬性為 [l],例如 [lrwxrwxrwx]。
塊(block)裝置檔案:就是儲存資料以供系統訪問的介面裝置,簡單而言就是硬碟。例如一號硬碟的**是 /dev/hda1等檔案。第乙個屬性為 [b]。
字元(character)裝置檔案:即串列埠的介面裝置,例如鍵盤、滑鼠等等。第乙個屬性為 [c]。
• 套接字(sockets):這類檔案通常用在網路資料連線。我們可以啟動乙個程式來監聽客戶端的要求,客戶端就可以通過套接字來進行資料通訊。第乙個屬性為 [s],最常在 /var/run目錄中看到這種檔案型別。
• 管道(fifo, pipe):fifo也是一種特殊的檔案型別,它主要的目的是,解決多個程式同時訪問乙個檔案所造成的錯誤。fifo是first-in-first-out(先進先出)的縮寫。第乙個屬性為 [p]。
那麼,使用「ls -al」命令,就可以簡單通過判斷每乙個檔案的第乙個屬性來了解這個檔案是何種型別。
除了裝置檔案是系統中很重要的檔案,最好不要隨意修改之外(通常它也不會讓你修改),另乙個比較有趣的檔案就是連線檔案。如果常常將應用程式放到桌面,就 應該知道在windows下面有所謂的「快捷方式」。同樣,可以將linux 下的連線檔案簡單視為乙個檔案或目錄的快捷方式。套接字與管道檔案比較難理解,因為它們與程序(process)密切相關,到將來了解程序(第17章)之 後,再回來檢視吧。此外,也可以通過man fifo及man socket來檢視系統說明。
LInux檔案型別
大多數linux資源都能以檔案的方式來訪問,在乙個linux系統上能夠出現的部分型別的檔案如下 普通檔案 稱為磁碟檔案,並且被定義為能夠進行隨機儲存的資料儲存單位。他們是面向位元組的,意思是從其中讀出或向其寫入的基本單位是單個位元組,單個位元組也與單個字元相對應。無名管道和有名管道 pipc 是乙個...
Linux檔案型別
當我們在linux中輸入ls al的時候,最開始會出現 10個字元,其中第乙個字元即代表linux的檔案型別。現述說如下 regular 普通檔案,最常用的檔案型別,它包含了某種形式的資料,至於它是二進位制資料還是文字對unix核心而言並無區別,對普通檔案的解釋由處理該檔案的應用程式進行。例外是二進...
linux 檔案型別
在linux中只有一下7種檔案型別 即使開發人員在linux檔案樹中新增新內容也必須符合一下之一 1.普通檔案 表示,可用ls l檢視 2.目錄 d 在linux中,任何東西都被看成檔案,外裝置也看成檔案,注意是任何東西 3.字元裝置檔案 c 4.塊裝置檔案 b 5.套介面檔案 s 如我們開啟mys...