Skip to content

Eza

繽紛多彩的 ls 現代替代品

軟體分類 生產力 / 系統工具
軟體標籤
rated-1GISAutomation toolsReport editing
開發廠商 eza-community
Stars
20.4k
Forks
403
License
EUPL-1.2
Version
v0.18.23
Update
2026-03-08
OS

產品說明

Eza 是廣受歡迎但已停止維護的 exa 專案的現代化繼承者(Community Fork)。它是一款用 Rust 語言編寫的命令列工具,旨在完全取代古老的 Unix 指令 ls

如果你覺得終端機裡的 ls 指令輸出單調乏味,無法一眼區分檔案類型,Eza 將會改變你的看法。它預設開啟色彩豐富的輸出,能根據檔案類型顯示不同顏色,並支援顯示 Icons(圖示)。對於開發者來說,最實用的功能莫過於它的 Git 整合——在列出檔案時,能直接看到哪些檔案被修改過(Modified)或未追蹤(Untracked),甚至還能像 tree 指令一樣以樹狀結構顯示目錄層級。

核心特色:

  • 視覺強化:利用豐富的色彩區分檔案類型、權限與擁有者,資訊一目了然。
  • 圖示支援:支援 Nerd Fonts,能為不同類型的檔案(如 .py, .rs, .md)加上對應的精美圖示。
  • Git 整合:在列表模式下新增一欄 Git 狀態標記(New, Modified, Ignored),開發者無需一直輸入 git status
  • 樹狀視圖:內建 tree 功能,可遞迴顯示目錄結構,並同時保有 Eza 的詳細資訊顯示能力。
  • 詳細資訊:支援顯示檔案的擴充屬性(Extended Attributes)、inode、區塊數以及絕對時間與相對時間。

常用指令

Eza 的參數設計盡量相容於 ls,但提供了更多強大的選項。建議可以在 Shell 設定檔(如 .zshrc)中設定 alias ls='eza' 來無痛替換。

啟動與基礎操作

# 基礎用法 (取代 ls)
eza

# 顯示詳細資訊與圖示 (建議設為 alias ll)
eza -l --icons
指令/參數功能說明應用場景
-l / --long列表模式顯示權限、大小、時間等詳細資訊 (類似 ls -l)
-a / --all顯示所有顯示包含隱藏檔 (以 . 開頭) 的所有檔案
-T / --tree樹狀模式遞迴顯示資料夾結構 (類似 tree 指令)
--icons顯示圖示在檔名前顯示圖示 (需使用 Nerd Fonts 字型)
--gitGit 狀態顯示檔案的 Git 狀態 (需在 Git 倉庫內且配合 -l 使用)
-s modified排序依照修改時間進行排序 (可改為 size, type 等)
--header標頭顯示欄位名稱 (Permissions, Size, User 等)
-L 2層級限制在使用樹狀模式 (-T) 時,限制顯示的深度為 2 層

進階技巧

  • 取代 ls 與 tree:你可以在 .bashrc.zshrc 加入以下別名,讓終端機體驗煥然一新:
    alias ls='eza --icons'
    alias ll='eza -l --icons --git --header --time-style=relative'
    alias lt='eza --tree --level=2 --icons'
    
  • 相對時間顯示:使用 --time-style=relative,檔案時間會顯示為「2 days ago」或「just now」,比冷冰冰的日期更符合直覺。
  • 安全性檢查:Eza 對於不同使用者權限的檔案會用鮮明的顏色標示(例如 Root 擁有的檔案會高亮),有助於快速發現權限設定錯誤的檔案。

操作介面