Favicon of eza

eza

A Rust-based replacement for ls that adds color-coded output, Git status, hyperlinks, and theming while staying a single small binary.

eza is a modern, Rust-based replacement for the ls command found on Unix and Linux systems. It's a single, small binary that adds colorized output, Git awareness, and better defaults on top of what ls already does, without needing extra configuration to be useful right away. It's aimed at developers and terminal users who spend a lot of time listing directories and want more useful information at a glance, particularly if they're already comfortable with ls-style flags.

eza is a continuation of exa, an earlier project with a similar goal. The README lists a set of fixes and additions not present in exa, including a fix for a display bug the project calls "The Grid Bug," along with several security fixes, which is worth knowing if you're coming from exa specifically rather than from stock ls.

Key features

  • Colorized, typed output: file types and metadata are distinguished by color rather than requiring you to parse plain text.
  • Git integration: shows Git repo status per file and per directory with --git, --git-repos, and --git-repos-no-status.
  • Symlink and extended attribute awareness: understands symlinks and extended attributes, and can dereference links for file information with -X.
  • Grid, long, and tree views: switch between a compact grid (the default), a detailed long listing (-l), or a recursive tree view (-T).
  • Hyperlink support: entries can be rendered as clickable hyperlinks in terminals that support them, via --hyperlink.
  • Mount point and SELinux details: surfaces mount point information (-M) and SELinux security context (-Z) in long view.
  • Human-readable relative dates: timestamps can be shown as relative ("2 hours ago") using --time-style=relative instead of raw dates.
  • Custom themes: a theme.yml file lets you configure colors and icons per file type, with pre-made themes available in a separate eza-themes repository. Existing LS_COLORS and EXA_COLORS environment variables still work and take precedence, for backwards compatibility.
  • Single binary: no separate runtime or dependencies to install alongside it.

Ideal use cases

eza is a good fit if you want a nicer default ls for daily terminal use, especially inside Git repositories, where seeing file-level Git status inline saves a context switch to a separate git status call. It also suits people who like customizing their terminal environment through icons and themes, since the theme system and hyperlink, mount, and SELinux extras go well beyond what stock ls shows.

It's a weaker choice if you need strict POSIX ls output for scripts, since the project has deliberately made some behavior different from ls in pursuit of better defaults and more features, described in the README as "almost, but not quite, entirely unlike ls." If your workflow depends on parsing classic ls output byte-for-byte, keep using ls itself in that context and reach for eza interactively instead.

Installation

eza is available for Windows, macOS, and Linux, with platform- and distribution-specific instructions maintained in the project's INSTALL.md file rather than listed inline in the main README.

If you already use Nix with flake support, you can try it without a separate install step:

nix run github:eza-community/eza

To pass arguments through when using nix run, add them after --:

nix run github:eza-community/eza -- -ol

Once installed, common invocations include a long listing with a header row:

eza -l -h

Or a recursive tree view that skips files ignored by Git:

eza -T --git-ignore

Check man eza, or the man pages in the repository, for the complete set of display, filtering, and long-view options, including the full list of valid sort fields, time fields, and time styles. The project's own screenshots and packaging status badge, which tracks how many distributions carry eza, are also linked from the README if you want to confirm availability for your specific system before installing.

Categories:

Frequently asked questions

Share:

Stars
22.5K
Forks
468
Last commit
7 hours ago
Repository age
3 years
License
EUPL-1.2
Self-hosted
No
Activity score
80/100
View Repository
Built with:

Similar to eza

Favicon

 

  
  
Favicon

 

  
  
Favicon