顯示目錄內容(ls 指令)
使用 ls 指令來顯示目錄的內容。
ls 指令會將每一個指定的 Directory 內容,或每一個指定的 File 名稱,以及任何使用旗標所要求的資訊,一起寫入標準輸出。如果您沒有指定 File 或 Directory,ls 指令將會顯示現行目錄內容。
就預設值而言,ls 指令將依檔名字母順序,顯示所有資訊。如果是以具有 root 授權的使用者身分來執行指令, 根據預設值,它會使用 -A 旗標來列出所有項目,除了點 (.) 以及點點 (..) 以外。若要顯示檔案的所有項目(包括那些以點 (.) 來開頭的項目),請使用 ls -a 指令。
您可以用下列方法將輸出格式化:
- 使用 -l 旗標,每一行列出一個項目。
- 指定 -C 或 -x 旗標,以多欄方式列出項目。當輸出至 tty 時,-C 旗標為預設格式。
- 指定 -m 旗標,列出以逗號隔開的一系列項目。
要判斷輸出行中的字元位置數目時,ls 指令會使用 $COLUMNS 環境變數。如果此變數未設定,則指令將讀取 terminfo 檔案。如 果 ls 指令無法以這些方法判斷字元位置數字,將使用預設值 80。
以 -e 與 -l 旗標顯示的資訊將解譯如下:
每個項目的第一個字元可能會是下列其中一項:
| 項目 | 說明 |
|---|---|
| d | 項目為一目錄。 |
| b | 項目為一區塊特殊檔案。 |
| c | 項目為一字元特殊檔案。 |
| l | 項目為一符號鏈結。 |
| p | 項目為一先進先出法 (FIFO) 管線特殊檔案。 |
| s | 項目為一區域 Socket。 |
| - | 項目為一一般檔案。 |
下九個字元將區分為三組,每組三個字元。前三個字元顯示檔案或目錄擁有者的許可權。接下來的三個字元顯示群組中其他使用者的許可權。最後三個字元顯示可存取檔案的任何其他人之許可權。每一組的三個字元都顯示檔案的讀取、寫入與執行許 可。目錄的執行許可可讓您搜尋目錄中指定的檔案。
許可權表示如下:
| 項目 | 說明 |
|---|---|
| r | 授與讀取許可 |
| t | 只有目錄擁有者或檔案擁有者可以刪除或更名該目錄內的檔案,即使他 人具有該目錄的寫入許可。 |
| w | 授與寫入(編輯)許可 |
| x | 授與執行(搜尋)許可 |
| - | 未授與相對應許可 |
以 -e 旗標顯示的資訊和以 -l 旗標顯示的相同, 但新增的第 11 個字元解譯如下:
| 項目 | 說明 |
|---|---|
| + | 表示檔案具有延伸安全保護資訊。例如,檔案可能具有模式中延伸的 ACL、TCB,或 TP 屬性。 |
| - | 表示檔案沒有延伸的安全保護資訊。 |
在列出目錄中檔案大小時, ls 指令將顯示區塊的總數,包含間接 的區塊。
請參閱下列範例:
- 若要列出現行目錄下的所有檔案,請鍵入:
此舉將列出所有檔案,包括ls -a- 點 (.)
- 點點 (..)
- 其他以點 (.) 或不以點為檔名開頭的檔案
- 若要顯示詳細資訊,請鍵入:
如此會顯示一個長清單,內含有關 chap1 及 .profile 檔案的詳細資訊。ls -l chap1 .profile - 若要顯示目錄的相關詳細資訊,請鍵入:
這會針對目錄 . 及 manual,以及檔案 manual/chap1 顯示長清單。若沒有 -d 旗標,這會列出 . 及 manual 目錄中的檔案,而非關於目錄本身的詳細資訊。ls -d -l . manual manual/chap1
請參閱 Commands Reference, Volume 3 中的 ls 指令,以取得完整語法。