Eza
繽紛多彩的 ls 現代替代品
軟體分類 生產力 / 系統工具
軟體標籤
rated-1GISAutomation toolsReport editing
開發廠商 eza-community
產品說明
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 字型) |
--git | Git 狀態 | 顯示檔案的 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 擁有的檔案會高亮),有助於快速發現權限設定錯誤的檔案。
操作介面
