A cat(1) clone for the terminal with syntax highlighting, Git change markers, and automatic paging.
eza-community/eza
A modern replacement for the ls command, with colors, icons, Git status, and tree views in a single Rust binary.
- Stars
- 23,630
- Forks
- 547
- Open issues
- 470
- Last commit
- 3 months ago
What is it?
eza is a command-line file lister written in Rust and intended as a modern alternative to Unix and Linux's `ls`. It uses colors to distinguish file types and metadata, and it understands symlinks, extended attributes, and Git repository status. It is distributed as one self-contained binary.
eza keeps most of the familiar `ls` workflow but changes several defaults and adds options such as tree and grid views, human-readable relative dates, hyperlink output, mount point details, and SELinux context display. It is a fork of the exa project, and it fixes the grid display bug introduced in exa in 2021.
Display can be customized through a `theme.yml` file that controls colors and icons per file type and extension, while the older `LS_COLORS` and `EXA_COLORS` environment variables remain supported. Installation instructions cover Windows, macOS, and Linux, and the project can also be run with Nix.
Key features
- 01Colored output that distinguishes file types and metadata
- 02Tree, grid, and long-format views with Git status columns
- 03Icons and hyperlink output in the terminal
- 04Customizable colors and icons through a theme.yml file
- 05Human-readable relative dates and extended attribute display
Use cases
- Replacing plain ls in daily shell use with a more readable listing
- Browsing project directories with Git status and tree views
- Customizing terminal file listings with themes and icons
Quick start
- 1
Try it with Nix flakes (no install needed)
nix run github:eza-community/eza - 2
Read the platform-specific installation instructions in INSTALL.md
Things to know
- Installation instructions vary by platform and distribution and are kept in a separate INSTALL.md file.
- It is a replacement for ls with a different option set, so some flags differ from ls and exa.
In collections
Topics
FAQ
- What is eza?
- A modern replacement for the ls command, with colors, icons, Git status, and tree views in a single Rust binary. eza is a command-line file lister written in Rust and intended as a modern alternative to Unix and Linux's `ls`. It uses colors to distinguish file types and metadata, and it understands symlinks, extended attributes, and Git repository status. It is distributed as one self-contained binary.
- Is eza free to use? What license does it have?
- eza is open source under the EUPL-1.2 license. Check the license terms before using it in commercial products.
- Is eza still maintained?
- Updated within 6 months. The last commit to eza was on Aug 6, 2026.
- What can I use eza for?
- Replacing plain ls in daily shell use with a more readable listing Browsing project directories with Git status and tree views Customizing terminal file listings with themes and icons
- How do I install eza?
- Try it with Nix flakes (no install needed): nix run github:eza-community/eza Read the platform-specific installation instructions in INSTALL.md
- Where can I get eza?
- The source code and installation instructions are on GitHub: https://github.com/eza-community/eza
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A modern, extensible replacement for the Unix ls command with multiple views, Git-aware output, content search and plugins.
A fast, user-friendly command-line alternative to the Unix find command for locating files and directories by name.
A terminal UI for git written in Rust, offering keyboard-driven staging, committing, branching, stashing and log browsing.
The modern Windows Terminal app with tabs and Unicode support, plus the source for the classic Windows console host (conhost.exe).
Termux is an Android terminal app and Linux environment that runs a shell with installable packages on your phone.