1. 程式人生 > >linux下ls -l命令(即ll命令)檢視檔案的顯示結果分析

linux下ls -l命令(即ll命令)檢視檔案的顯示結果分析

在linux下使用“ls -l”或者“ls -al”或者“ll”命令檢視檔案及目錄詳情時,shell中會顯示出好幾列的資訊。平時也沒怎麼注意過,今天忽然心血來潮想了解一下,於是整理了這篇部落格,以供參考:

首先給出一張典型的顯示結果:
這裡寫圖片描述
下面對其中的每一列進行詳細的分析:

一、檔案型別

這裡寫圖片描述
表示該檔案的型別:

  • “-”表示普通檔案;
  • “d”表示目錄;
  • “l”表示連結檔案;
  • “p”表示管理檔案;
  • “b”表示塊裝置檔案;
  • “c”表示字元裝置檔案;
  • “s”表示套接字檔案;

二、檔案屬性

這裡寫圖片描述
以back_init檔案為例,其屬性可分為三段:[rwx][rwx][r-x],其中:

第一段表示檔案建立者/所有者對該檔案所具有的許可權,第二段表示建立者/所有者所在的組的其他使用者所具有的許可權,第三段表示其他組的其他使用者所具有的許可權。

  • r(Read,讀取許可權):對檔案而言,具有讀取檔案內容的許可權;對目錄來說,具有瀏覽目錄的許可權。
  • w(Write,寫入許可權):對檔案而言,具有新增、修改檔案內容的許可權;對目錄來說,具有刪除、移動目錄內檔案的許可權。
  • x(eXecute,執行許可權):對檔案而言,具有執行檔案的許可權;對目錄來說,該使用者具有進入目錄的許可權。

另外,這裡還有2個很特殊的屬性,平時不怎麼常見,這裡也順帶解釋一下:

  • s或S(SUID,Set UID)
    :可執行的檔案搭配這個許可權,便能得到特權,任意存取該檔案的所有者能使用的全部系統資源。請注意具備SUID許可權的檔案,黑客經常利用這種許可權,以SUID配上root帳號擁有者,無聲無息地在系統中開扇後門,供日後進出使用。
  • t或T(Sticky):/tmp和 /var/tmp目錄供所有使用者暫時存取檔案,亦即每位使用者皆擁有完整的許可權進入該目錄,去瀏覽、刪除和移動檔案。

綜合起來可得,對於back_init檔案,其建立者/所有者具有可讀可寫可執行的許可權,其建立者/所有者所在的組的其他使用者具有可讀可寫可執行的許可權,其他組的其他使用者則具有可讀可執行但不可寫的許可權。

三、目錄/連結個數

這裡寫圖片描述

對於目錄檔案,表示它的第一級子目錄的個數。注意此處看到的值要減2才等於該目錄下的子目錄的實際個數。

  • 比如這裡的include目錄下,其實是沒有子目錄的,所以應該是0,但是它這裡卻顯示2,這是因為要加上.目錄和..目錄。在linux下,.目錄表示當前目錄,..目錄表示上一級目錄。

  • 這也可以解釋上圖中第一行的.目錄下的3和第二行..目錄下的26。因為當前目錄下有一個include目錄,所以加上.目錄和..目錄這2個目錄就等於3,所以第一行會顯示3。而上一級目錄共有24個目錄,加上上一級目錄的.目錄和..目錄這2個目錄,所以這裡的第二行顯示的是26。

對於其他檔案,表示指向它的連結檔案的個數。

四、所有者及組

這裡寫圖片描述
表示該檔案的所有者/建立者(owner)及其所在的組(group)。

五、檔案大小

這裡寫圖片描述

如果是檔案,則表示該檔案的大小,單位為位元組。
如果是目錄,則表示該目錄符所佔的大小,並不表示該目錄下所有檔案的大小。

六、修改日期

這裡寫圖片描述
該檔案最後修改的日期時間。

七、檔名稱

這裡寫圖片描述
檔名,無需多說。

八、字型顏色

這裡寫圖片描述
在大多數的linux shell視窗中,還能用顏色來區分不同檔案的屬性:

  • 灰白色表示普通檔案;
  • 亮綠色表示可執行檔案;
  • 亮紅色表示壓縮檔案;
  • 灰藍色表示目錄;
  • 亮藍色表示連結檔案;
  • 亮黃色表示裝置檔案;

當然,這裡需要使用系統預設的配色方案。如果你自定義了shell的配色方案,則有可能與上面的定義不一致。

最後還要說明一點的是,可以看到上述的圖片中,back_init檔案的後面還帶了一個星號(*),這也是linux系統下用於標記可執行檔案的另外一種方式。也就是說,凡是檔名後面帶了一個星號(*)的,都是在說明這是一個可執行檔案。