ls 列出目錄中的檔案與子目錄資訊

最後更新日期: 2025 年 4 月 26 日

在Linux作業系統中,檔案與目錄管理是日常操作的核心部分。對於初學者來說,ls 指令是最常用且最基礎的工具之一,用於列出目錄中的檔案與子目錄資訊。雖然 ls 看起來簡單,但它功能強大,透過各種選項可以滿足不同需求,例如顯示詳細資訊、排序檔案或篩選特定類型檔案。本文將以簡單易懂的方式,介紹 ls 指令的基本概念、語法、常用選項、實際應用範例,以及使用時的注意事項,幫助初學者快速上手並靈活運用這個Linux指令。

一、什麼是 ls 指令?

ls 是 “list” 的縮寫,意為「列出」。它用來顯示指定目錄中的內容,包括檔案和子目錄的名稱。作為Linux終端機中最常用的指令之一,ls 允許使用者快速檢視檔案系統的結構,確認檔案是否存在,或檢查檔案的屬性(如權限、大小等)。

在Linux中,檔案和目錄是系統運作的基礎,ls 指令就像是檔案管理員的「眼睛」,幫助使用者了解當前目錄的內容。無論是檢查家目錄中的個人檔案,還是管理伺服器上的系統檔案,ls 都是不可或缺的工具。

1.1 ls 的基本語法

ls 的基本語法非常簡單:

ls [選項] [路徑]
  • [選項]:用來控制 ls 的顯示方式,例如顯示詳細資訊或排序方式。
  • [路徑]:指定要列出的目錄或檔案路徑。如果不指定路徑,預設列出目前所在目錄(當前工作目錄)的內容。

1.2 簡單使用範例

假設你目前位於家目錄(/home/user),輸入以下指令:

ls

終端機會顯示當前目錄中的檔案和子目錄名稱,例如:

documents  downloads  music  pictures  videos

這表示家目錄中有五個子目錄。如果想列出另一個目錄的內容,例如 /etc,可以輸入:

ls /etc

這會顯示 /etc 目錄中的所有檔案和子目錄。

二、ls 的常用選項

ls 指令的強大之處在於它的多樣化選項,這些選項可以讓使用者自訂顯示的內容和格式。以下介紹幾個最常用的選項,幫助你快速掌握 ls 的功能。

2.1 -l:顯示詳細資訊(長格式)

使用 -l 選項,ls 會以「長格式」顯示檔案的詳細資訊,包括權限、擁有者、檔案大小、修改時間等。語法如下:

ls -l

執行後的輸出可能如下:

drwxr-xr-x  2 user user  4096 2025-04-01 10:00 documents
-rw-r--r--  1 user user 12345 2025-04-02 15:30 example.txt

輸出欄位解釋

  • 第一欄(如 drwxr-xr-x):檔案類型與權限(d 表示目錄,- 表示普通檔案)。
  • 第二欄(如 2):硬連結數量。
  • 第三、四欄(如 user user):檔案的擁有者和群組。
  • 第五欄(如 4096):檔案大小(以位元組為單位)。
  • 第六欄(如 2025-04-01 10:00):最後修改時間。
  • 第七欄(如 documents):檔案或目錄名稱。

2.2 -a:顯示隱藏檔案

在Linux中,隱藏檔案的名稱以「.」開頭(例如 .bashrc)。預設情況下,ls 不會顯示這些檔案。使用 -a 選項可以列出所有檔案,包括隱藏檔案:

ls -a

輸出可能如下:

.  ..  .bashrc  documents  downloads  example.txt
  • . 表示當前目錄。
  • .. 表示上層目錄。
  • .bashrc 是隱藏的設定檔案。

2.3 -h:人性化顯示檔案大小

當使用 -l 選項時,檔案大小以位元組(bytes)顯示,對於大檔案可能不易閱讀。搭配 -h 選項,ls 會將檔案大小轉換為更易讀的單位(例如 KB、MB、GB):

ls -lh

輸出可能如下:

drwxr-xr-x  2 user user  4.0K 2025-04-01 10:00 documents
-rw-r--r--  1 user user  12K  2025-04-02 15:30 example.txt

這裡,4.0K 表示 4KB,12K 表示 12KB。

2.4 -t:按修改時間排序

預設情況下,ls 按檔案名稱的字母順序排序。使用 -t 選項可以按檔案的修改時間排序,最新修改的檔案會排在前面:

ls -t

輸出可能如下:

example.txt  documents  downloads

2.5 -r:反向排序

-r 選項會將排序結果反轉。當與其他選項(如 -t)搭配使用時,可以改變排序順序。例如:

ls -rt

這會按修改時間排序,但最舊的檔案排在前面。

2.6 --color:彩色顯示

許多現代Linux發行版預設啟用彩色輸出,根據檔案類型顯示不同顏色(例如目錄為藍色、可執行檔案為綠色)。若未啟用,可以使用 --color 選項:

ls --color

若想關閉彩色顯示,可以使用 --color=none

2.7 組合選項

ls 的選項可以組合使用。例如,若想顯示詳細資訊(包括隱藏檔案)並以人性化大小顯示,可以輸入:

ls -lah

這等同於結合 -l-a-h 三個選項。

三、ls 的進階應用

除了基本選項,ls 還支援進階功能,適用於更複雜的場景。以下介紹幾種常見的進階用法。

3.1 使用通配符篩選檔案

ls 可以搭配通配符(wildcard)來篩選特定檔案。例如:

  • 列出所有 .txt 結尾的檔案:
    ls *.txt

    輸出可能如下:

    example.txt  note.txt
  • 列出名稱以 doc 開頭的檔案或目錄:
    ls doc*

    輸出可能如下:

    documents  doc1.txt

3.2 遞迴列出子目錄

使用 -R 選項,ls 會遞迴列出目錄及其子目錄中的所有內容:

ls -R

輸出可能如下:

documents:
file1.txt  file2.txt

downloads:
image.jpg

這對於檢查多層目錄結構非常有用。

3.3 按檔案類型篩選

搭配其他工具(如 grep),可以篩選特定類型的檔案。例如,只列出目錄:

ls -l | grep ^d

這裡,^d 表示只匹配以 d 開頭的行(即目錄)。

3.4 搭配其他指令

ls 經常與其他Linux指令搭配使用。例如:

  • 計算目錄中的檔案數量:
    ls | wc -l
  • ls 輸出存為檔案:
    ls -l > file_list.txt

四、實際應用場景

ls 指令在不同場景中都有廣泛應用。以下是幾個常見的實際案例,展示如何使用 ls 解決問題。

4.1 檢查新下載的檔案

假設你從網路上下载了檔案到 downloads 目錄,想確認檔案是否下載成功,可以輸入:

ls -lh downloads

這會顯示 downloads 目錄中的檔案列表,並以人性化大小顯示,方便檢查檔案是否存在及其大小。

4.2 尋找最近修改的檔案

如果你正在編輯多個檔案,想找出最近修改的檔案,可以使用:

ls -lt

最新修改的檔案會顯示在最上方,方便快速定位。

4.3 管理隱藏設定檔案

許多Linux應用程式將設定檔案儲存在隱藏檔案中(例如 .bashrc.gitignore)。要檢查這些檔案,可以使用:

ls -a

這有助於確認設定檔案是否存在或是否需要修改。

4.4 檢查目錄結構

在管理大型項目或伺服器時,可能需要檢查多層目錄結構。使用遞迴選項:

ls -R project

這會顯示 project 目錄及其子目錄的完整結構。

五、使用 ls 的注意事項

雖然 ls 簡單易用,但在使用時仍需注意一些細節,以確保正確操作並避免誤解。

5.1 理解隱藏檔案

初學者可能會忽略隱藏檔案,導致誤以為某些檔案不存在。使用 ls -a 可以確保不漏掉任何檔案,特別是在檢查設定檔案時。

5.2 避免過多輸出

在包含大量檔案的目錄中,直接使用 ls 可能導致螢幕被大量資訊淹沒。建議搭配 less 指令分頁顯示:

ls | less

q 鍵退出分頁模式。

5.3 注意權限問題

如果某些檔案或目錄無法顯示,可能是因為目前使用者缺乏讀取權限。此時可以嘗試使用 sudo ls(需要管理員權限)或檢查權限設定:

ls -l

5.4 不同發行版的預設行為

不同Linux發行版對 ls 的預設行為可能略有不同。例如,某些發行版預設啟用 --color,而其他可能需要手動設定。可以在 ~/.bashrc 中添加別名來統一行為:

alias ls='ls --color=auto'

六、結論

ls 指令是Linux中最基礎但又極其重要的工具之一。它的簡單語法和靈活選項使其適用於從初學者到進階使用者的各種場景。透過本文的介紹,你應該已經掌握了 ls 的基本用法、常用選項和進階應用,包括如何顯示詳細資訊、篩選檔案、排序輸出,以及與其他指令搭配使用。

對於初學者來說,建議從 lsls -lls -a 開始練習,逐步探索其他選項和組合。隨著對Linux的深入學習,你會發現 ls 不僅是列出檔案的工具,更是檔案系統管理的起點。無論是日常檔案管理還是伺服器維護,熟練使用 ls 都能讓你的工作更加高效!

希望這篇文章能幫助你快速上手 ls 指令,並在Linux學習的旅程中打下堅實基礎。只要多加練習,你就能靈活運用 ls,輕鬆探索Linux檔案系統的每一角落!