
本篇文章教大家如何分辨 Linux 中的目錄檔案,學習 Linux 的人都知道 Linux 的哲學思想那就是一切皆檔案,那么在眾多的檔案中,如何區分出哪個是目錄呢?這時就會有人說了我靠顏色區分,靠顏色區分確實不錯,在下面的圖片中,藍顏色的就代表目錄檔案,

既然這里提到了顏色,那么就把順帶也提一下其他顏色分別代表什么檔案吧,這里藍色就不再多說了,從圖片也都可以看出來,藍色檔案就是目錄,綠色的檔案一般表示可執行的檔案或者是可以執行的程式,白色的檔案也是最常見的也就是普通檔案了,像很多組態檔就是白色表示的,淺藍色檔案表示鏈接檔案,一般都是通過 ln 這個命令建立出來的,這種型別的檔案上面圖片也有顯示,就是帶有箭頭指向的那種,紅色閃爍檔案,這種檔案一般表示鏈接的檔案有問題,要么位置改變了,要么就是源檔案被洗掉了,
雖然根據不同顏色區分不同檔案算是一種區分目錄檔案的方法,但是畢竟我們是搞技術的人嘛,這種方法怎么說呢,不是特別高級,那么下面就教大家如何通過 ls 的輸出進行區分吧,首先我們都知道 ls 這個命令算是 list 的縮寫,意為列出當前目錄下所有的檔案資訊,那么現在我們把重點就放在這個命令輸出的第一列上,
$ ll
切換到 /usr/local 目錄下執行的這個命令,因為這個目錄下型別稍微豐富一點

drwxr-xr-x
lrwxrwxrwx
-rw-r--r--
srwxrwxrwx
注意:這里顯示的內容是我們把紅框中的第一列內容都摘出來了
我們挑出了幾個比較有代表性的輸出來說明,在上面的輸出中可以看到第一列資訊很奇怪,有點看不懂的樣子,那么今天就來為大家揭曉他們的真實面目,我們拿 drwxr-xr-x 先來舉例說明:
d:這塊根據上面圖片的顏色其實也可以看出來,所以這里就不賣關子了,字母
d表示的就是目錄檔案,它是單詞 directory 的首字母,第一組 rwx:第一組 rwx 也就是第 2-4 位表示這個檔案的屬主所擁有的權限,
r表示 read 讀權限,w表示 write 寫權限,x則表示 execute 執行權限,第二組 r-x:第二組 r-x 也就是第 5-7 位表示這個檔案的屬組所擁有的權限,跟上面第一組一樣,
r表示 read 讀權限,x則表示 execute 執行權限,中間是寫權限,用-的話就說明屬組沒有寫這個權限第三組 r-x:第三組 r-x 表示其他權限,也就是除了檔案屬主和屬組之外的其他用戶所擁有的權限,了解了前兩組,想必第三組也是很容易就能夠理解,這里就不再多做解釋,
現在說完了第一個,除了第一位,剩余的 9 位,也就是從第 2-10 位大家肯定都明白了,每一種型別的檔案都會包含這三組權限,而對應的權限也只有讀寫和執行,說完了第一個,現在我們來看看第二行,第二個檔案它是以 l 開頭的,它的顏色是淺藍色,從顏色來區分,所以 l 代表的也就是鏈接檔案了,它是英文單詞 link 的首字母,一般使用鏈接檔案都是為了方便訪問(就像上圖中,我創建的鏈接檔案是 mysql,就是因為直接訪問 mysql-8.0.21-linux-glibc2.12-x86_64 這個目錄的話很不方便,過于長了),說完了第二行,現在我們來看第三行,第三行真是奇怪了哈,竟然是一個橫杠開頭,如果你平時有觀察的夠仔細,那么你會知道其實在 Linux 系統中大部分檔案都是這樣,因為以橫行表示的都是普通檔案,也就是隨便 touch 一個檔案,都會以橫杠開頭的,最后一行是以 s 開頭的一個檔案,這種檔案不是特別多,但是也是比較常見的型別,這種檔案叫做套接字檔案,對應英文單詞是 socket ,
說到這里其實查看目錄檔案的方法很簡單,通過以上兩種方法都可以,并且兩種方法也都很簡單,尤其是第一種通過顏色就可以區分,雖然本篇文章的內容很基礎,但這也是入門必須要學習和掌握的,但其實除了以上兩種方法,還有另一種區分的方法就是通過 file 命令,如下:
$ file ./bin/
./bin/: directory
$ file mysql
mysql: symbolic link to mysql-8.0.21-linux-glibc2.12-x86_64
$ file yd.socket.server
yd.socket.server: socket

file 命令是用來確定檔案型別的,雖然平時用的不多,并且沒有上面的方法明了,但是作為 Linux 系統的管理人員,多掌握一些基礎的命令還是很有必要的,本文關于 Linux 查看目錄的方法就介紹到這里,感謝大家長期以來的支持!
本文由博客一文多發平臺 OpenWrite 發布!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/250014.html
標籤:其他
