首頁 > linux教程 > Linux文件和目錄管理 閱讀:0更新時間:2020-03-28 00:55:06

Linux命令行下如何識別文件類型?

對于第一次使用 linux 命令行的用戶,可能真的搞不清楚哪個是文件,哪個是目錄,究其原因是很難直接通過名字看出來目錄和文件的區別。

雖然從名稱上不容易分辨,但是可以從顏色上進行區分。一般情況下,Linux 用藍色代表目錄,其他顏色則表示是文件。例如:
/root 目錄下的文件和目錄
圖 1 /root 目錄下的文件和目錄

注意,本節多處會使用 pwd(顯示當前工作所在的目錄)和 ls(列出當前目錄中包含的所有文件和子目錄)命令,讀者只需了解它們的功能即可,本章后續會對它們做詳細介紹。

和 Linux 不同,Windows 下帶有 <DIR> 標記的行或使用中括號“[]”括起來的名稱就是目錄,其他的則是文件(如圖 2 所示)。
Windows命令行區分文件和目錄(文件夾)
圖 2 Windows命令行區分文件和目錄(文件夾)
不僅如此,Linux 中還可以用不同的顏色來區分不同種類的文件,例如綠色代表可執行文件、紅色代表壓縮文件、淺綠色代表鏈接文件、白色代表其他文件、黃色代表設備文件等。

但是,不同顏色所代表的文件類型不一定是這樣,更準確的對應方式還取決于配置文件 /etc/DIR_COLORS 中的規定。因此,如果想詳細了解不同文件類型所對應的顏色,可以使用 man 命令,例如:

[root@localhost ~]# man dir_colors

注意,有些 Linux 發行版單獨使用 ls 命令,無法顯示出帶有不同顏色的文件和目錄,此時就需要使用 ls --color=auto 命令,明確令其使用顏色來區分文件類型。

在此基礎上,如果不想每次使用 ls 命令時,都顯式附帶 --color=auto,可以執行如下命令:

[root@localhost ~]# alias ls = 'ls --color=auto'

通過給 ls --color==auto 這個整體設置一個別名 ls,這樣當后續使用 ls 命令時,就等同于執行 ls --color=auto 命令。

同時,如果想使這個設置永遠生效,還需要將其添加到 /etc/bashrc 或 /home/<user>/.bashrc 文件中,前者對所有用戶有效,而后者僅對用戶<user>有效。

其實,那些默認提供顏色功能的 Linux 發行版,也是通過這個方法開啟的功能。

當然,通過顏色來區分文件類型,難免有些牽強,對于顏色不太敏感的讀者來說,很容易搞錯。Linux 中精確判斷文件類型的方法,是通過文件本身所具有的屬性進行判斷。

通過 ls -l 命令,我們就可以查看當前目錄下所有文件和目錄各自的屬性,如圖 3 所示。
查看屬性
圖 3 查看屬性
圖 3 顯示的執行結構中,每行代表一個文件或目錄,其中第一個字符表示的就是文件的類型,其可能的取值以及表示的文件類型,如表 4 所示。

表 4 不同字符對應的文件類型
第一個字符 文件類型
- 普通文件,包括純文本文件、二進制文件、各種壓縮文件等。
d 目錄,類似 Windows 系統中的文件夾。
b 塊設備文件,就是保存大塊數據的設備,比如最常見的硬盤。
c 字符設備文件,例如鍵盤、鼠標等。
s 套接字文件,通常用在網絡數據連接,可以啟動一個程序開監聽用戶的要求,用戶可以通過套接字進行數據通信。
p 管道文件,其主要作用是解決多個程序同時存取一個文件所造成的錯誤。
l 鏈接文件,類似 Windows 系統中的快捷方式。

除以上 2 種方法外,Linux 還提供了 file 命令,可以查詢文件的類型,有關該命令的用法,可閱讀《Linux file命令》一節。

beylze編程學院,一個分享編程知識和seo優化知識的網站。跟著beylze一起學習,每天都有進步。

通俗易懂,深入淺出,一篇文章只講一個知識點。

文章不深奧,不需要鉆研,在公交、在地鐵、在廁所都可以閱讀,隨時隨地漲姿勢。

文章不涉及代碼,不燒腦細胞,人人都可以學習。

當你決定關注beylze(公眾號:beylze),你已然超越了90%的其他從業者!

優秀教程

国产亚洲欧美日韩